使用可能な要素を持つ配列と、必要な要素を持つ配列があります。必要な要素がすべて揃っているかどうかを知りたい。
配列には「重複」が含まれる場合があります。次に、必要な数の要素を使用できるようにする必要があります。#contains の最初の試行は? インクルードのためにメソッドが失敗しますか? 要素が少なくとも 1 回利用可能かどうかのみをチェックします
-- 編集: 簡略化されたサンプル コード --
# a first and simple trial
# that fails on duplicate elements
class Array
def contains?(other)
other.all? { |element| include?(element) }
end
end
available = [1, 1, 1, 2, 2, 3]
small = [1, 1, 2, 3]
big = [1, 1, 2, 3, 3]
available.contains?(small) # is true as intended
available.contains?(big) # is true but should be false
# because "big" contains more "3s" than "available"