Республиканская олимпиада по информатике 2008 года за 9 класс | Казахстанские олимпиады

Задача B. Подпоследовательность

Ограничение по времени Ограничение по памяти
2 seconds 128 MB.

Дана последовательность из NN целых чисел. Требуется найти ее KK-ю в лексикографическом порядке возрастающую подпоследовательность. Подпоследовательность получается из исходной последовательности вычеркиванием нуля или более, но не всех, чисел. В возрастающей последовательности каждое число строго больше предыдущего, если оно существует. Последовательность A=a1,a2,anA = {a_1, a_2, \dots a_n} считается лексикографически меньше последовательности B=b1,b2,bmB = {b_1, b_2, \dots b_m}, если AA — префикс (начальная часть) последовательности B, или существует такое kk, что ai=bia_i = b_i при i<ki < k, и ak<bka_k < b_k.

Формат входного файла

Первая строка входного файла содержит два целых числа NN и KK (1<N<=601 < N <= 60, K>=1K >= 1). На следующей строке записаны N целых чисел в пределах от 00 до 10910^9. Числа в строках разделены пробелом. Гарантируется, что искомая подпоследовательность существует.

Формат выходного файла

Первая строка выходного файла должна содержать число MM — количество чисел в найденной подпоследовательности. Вторая строка должна содержать MM разделенных пробелом целых чисел — саму найденную подпоследовательность.

Примеры

Вход

3 2
1 1 2

Выход

2
1 2