Ростислав обнови решението на 22.10.2011 21:15 (преди около 13 години)
+class Array
+
+ def to_hash
+ inject({}) do |hash, pair|
+ hash[pair[0]]=pair[1]
+ hash
+ end
+ end
+
+ def index_by
+ inject({}) do |hash, elem|
+ hash[yield elem] = elem
+ hash
+ end
+ end
+
+ def subarray_count(sub_array)
+ result = 0
+ each_index do |index|
+ result += 1 if slice(index, sub_array.length) == sub_array
+ end
+ result
+ end
+
+ def occurences_count
+ inject(Hash.new(0)) do |hash, elem|
+ hash[elem] = count(elem)
+ hash
+ end
+ end
+
+end