eolymp
bolt
Try our new interface for solving problems
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 цілих чисел через пропуск – елементи цієї послідовності.
Time limit 1 second
Memory limit 256 MiB
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
Source ІІІ етап Всеукраїнської учнівської олімпіади з інформатики у 2021/2022 навчальному році у Рівненській області (11-12 січня 2022 р.)