【发布时间】:2021-11-08 19:24:52
【问题描述】:
例如
a = [2,3,1,1]
b = [2,7,4,2]
--> c = [2]
我的解决方案是:
c = b.select do
|em| b.index(em) == a.index(em)
end
但如果我将它应用到给定的示例,它会返回
c = [2,2]
【问题讨论】:
-
我认为这个问题可以通过几种方式来解读。期望的输出是什么?
-
@JakeWorth:我认为他们正在尝试实现"bulls and cows" game
-
@JakeWorth 我正在寻找一种方法,它返回一个包含两个给定数组之间的公共元素的数组,当且仅当这些元素在它们各自的数组中也共享相同的索引时。我的解决方案在大多数情况下都可以正常工作,但是当 b 数组包含公共元素的副本时会出现问题。在这种情况下,即使该副本与共享索引的 a 数组的值不同,select 方法也会返回副本。我希望我已经很全面了。
-
这个问题通常说得很好,但不清楚如果
a = [1,1]和b=[1,1]需要什么返回值。我认为索引数组可能是更有用的返回值。