Problems
Паліндром
Паліндром
Подібно до задач про «щасливі» числа Петрик П’яточкін також неодноразово розв’язував різноманітні задачі про паліндроми. Варто нагадати, що паліндром – це непорожня послідовність елементів довільної природи, яка однакова при перегляді від початку до кінця і від кінця до початку. Наприклад, 1234321 або 123321, або 1.
Сьогодні хлопцю заманулося дещо переінакшити традиційні задачі на перевірку паліндромів. Для деякої непорожньої послідовності елементів $a_1,a_2,\dots,a_N$ довільного типу, наприклад, цілих чисел, знайти найкоротшу непорожню послідовність елементів $b_1,b_2,\dots,b_M$ такого самого типу, щоб у результаті приєднання її вкінець заданого ланцюжка (це називається конкатенацією) отримали паліндром
$a_1,a_2, \dots, a_N, b_1, b_2, \dots,b_M$
Вимоги до програми:
Програма повинна зчитувати вхідні дані з консолі. У першому рядку міститься одне ціле число – кількість N елементів вхідної послідовності (1 ≤ N ≤ 10 000). У наступному рядку записано N довільних цілих чисел, що розділені пропуском.
Результат виконання програми повинен записуватися у консоль. У першому рядку виводиться одне натуральне число – найменша можлива кількість M елементів у шуканій непорожній послідовності. У наступному рядку виводиться M цілих чисел через пропуск – елементи цієї послідовності.
Input example #1
1 1
Output example #1
1 1
Input example #2
3 1 2 3
Output example #2
2 2 1
Input example #3
3 1 1 1
Output example #3
1 1
Input example #4
3 1 2 1
Output example #4
2 2 1