diff --git a/array_utils.rb b/array_utils.rb new file mode 100644 index 0000000..8c58432 --- /dev/null +++ b/array_utils.rb @@ -0,0 +1,12 @@ +class ArrayUtils + class << self + def firsts_in_sequence(elements) + first = nil + elements.select do |cur| + ret = (cur != first) + first = cur + ret + end + end + end +end \ No newline at end of file diff --git a/test/array_utils_test.rb b/test/array_utils_test.rb new file mode 100644 index 0000000..df88015 --- /dev/null +++ b/test/array_utils_test.rb @@ -0,0 +1,8 @@ +require 'test_helper' +require '../array_utils' + +class ArrayUtilsTest < Test::Unit::TestCase + def test_firsts_in_sequence + assert_equal [1,2,1,2,3], ArrayUtils.firsts_in_sequence([1,1,1,1,2,1,1,1,2,2,2,2,2,2,2,3,3]) + end +end \ No newline at end of file