Привет, ребят!) как можно пройтись по массиву и склеить одинаковые элементы массива, а если разные то оставить также, и элементы при склеивании надо чтоб оставались на своих местах?
ary = %w[tt tt t i t t t t i i] ary.chunk { |a| a }.map { |a, b| a * b.size } # => ["tttt", "t", "i", "tttt", "ii"]
Там вложенный массив получается, первый элемент которого — это изначальный элемент, а второй элемент — массив из повторяющихся значений первого элемента. И мы мапаем так, что первый элемент склеивается столько раз, сколько этих повторов. Просто вместо map поставь to_a, понятнее станет.