Enumerable#max_by
レシーバーに複数の max/min 要素がある場合は、関連する要素の 1 つ (おそらく最初の要素)を返しEnumerable#min_by
ます。たとえば、次のようになります。
[1, 2, 3, 5].max_by{|e| e % 3}
2
のみ(または のみ) を返します5
。
代わりに、すべての最大/最小要素を配列で返したいと思います。上記の例では、[2, 5]
(または[5, 2]
) になります。これを取得する最良の方法は何ですか?