tiles длины n.
Пройдите по ряду слева направо ровно один раз: для каждого i от 0 до n - 2 по очереди, если tiles[i] == tiles[i + 1], удвойте tiles[i] и запишите в tiles[i + 1] ноль. Иначе ничего не делайте. Каждая проверка видит результат предыдущих.
После прохода сдвиньте все нули в конец ряда, сохранив порядок ненулевых плиток.
Верните получившийся ряд.tiles=[3, 3, 3, 5, 0, 5] → [6, 3, 5, 5, 0, 0]
i = 0: 3 и 3 равны → [6, 0, 3, 5, 0, 5]. i = 1: 0 и 3 разные. i = 2, 3: пропуск. i = 4: 0 и 5 разные. Сдвигаем нули в конец: [6, 3, 5, 5, 0, 0]. Две пятёрки не слились — между ними на момент проверки стоял ноль.
tiles=[2, 2, 2, 2] → [4, 4, 0, 0]
i = 0: [4, 0, 2, 2]. i = 1: 0 ≠ 2. i = 2: [4, 0, 4, 0]. После сдвига: [4, 4, 0, 0]. Получившиеся четвёрки повторно не сливаются.
tiles=[0, 0, 7] → [7, 0, 0]
tiles=[3, 3, 3, 5, 0, 5]
[6, 3, 5, 5, 0, 0]
«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 126 тестов на сервере, включая скрытые.