Codeforces Beta Round 19 |
---|
Закончено |
Однажды Вася увидел строку. В ней было настолько много разных букв, что они обозначались числами, но при этом каждая буква встречалась в строке не более 10 раз. Эта строка не понравилась Васе, потому что в ней были повторы: повтором длины x называется такая подстрока длины 2x, что ее первая половина совпадает посимвольно со второй. Вася стал удалять из строки все повторы. Он делает это следующим образом: пока это возможно, Вася берет самый короткий повтор, если таких несколько — самый левый, и удаляет его левую половину и все, что находится левее этого повтора.
Вам дана строка, которую увидел Вася. Выясните, что от нее останется после того как Вася удалит все повторы описанным выше методом.
В первой строке входных данных содержится целое число n (1 ≤ n ≤ 105) — длина строки. Следующая строка содержит n целых чисел от 0 до 109 включительно, разделенных пробелами — буквы строки, обозначенные числами. Гарантируется, что каждая буква встречается в строке не более 10 раз.
В первую строку выведите длину оставшейся части строки. Во вторую строку выведите, разделяя пробелами, все буквы строки, которая останется после того как Вася удалит все повторы описанным выше способом.
6
1 2 3 1 2 3
3
1 2 3
7
4 5 6 5 6 7 7
1
7
Название |
---|