寻找一种方法来获取swingers
下面的阵列并交换所有伙伴,同时保持男/女配对.我觉得令人困惑的是如何迭代二维数组
实施Swingers游戏.方法swingers应该采用一对数组的数组并返回相同类型的数据结构,并将这些数据混合起来.假设情侣阵列中的第一个项目是男性,第二个项目是女性.不要将一个人与自己性别的人配对(抱歉毁了你的乐趣).该程序的示例运行:
swingers([
["Clyde", "Bonnie"],
["Paris", "Helen"],
["Romeo", "Juliet"]
])
Run Code Online (Sandbox Code Playgroud)
当然,你根本不需要使用transpose
:
def swingers(pairs)
gents = pairs.map(&:first)
ladies = pairs.map(&:last)
gents.shuffle.zip(ladies.shuffle)
end
Run Code Online (Sandbox Code Playgroud)