我已经解决了一个问题,该问题要求您编写一种方法来确定提供的数组中的哪些单词是字谜,并将字谜分组到输出中的子数组中。
我已经使用似乎是典型的方式解决了它,即通过对单词进行排序并根据它们的排序字符将它们分组到哈希中。
当我最初开始寻找一种方法来做到这一点时,我注意到String#sum
存在将每个字符的序数加在一起。
我想尝试找出一些方法来确定基于 using 的字谜sum
。例如“cars”和“scar”是字谜,它们sum
是 425。
给定%w[cars scar for four creams scream racs]
预期输出的输入(我已经使用哈希解决方案得到)是:[[cars, scar, racs],[for],[four],[creams,scream]]
.
似乎在做类似的事情:
input.each_with_object(Hash.new []) do |word, hash|
hash[word.sum] += [word]
end
是要走的路,它给你一个散列,其中键“425”的值是['cars','racs','scar']。我认为我缺少的是将其转换为预期的输出格式。