28. НВП с восстановлением ответа

Не решаласьСредняя

Дана последовательность, требуется найти её наибольшую возрастающую подпоследовательность.

Напомним:

Последовательность x называется подпоследовательностью последовательности y, если x получается из y удалением нескольких (возможно, нуля или всех) элементов.

Наибольшая возрастающая подпоследовательность - строго возрастающая подпоследовательность наибольшей длины.

Формат ввода

В первой строке входных данных задано число N — длина последовательности (1 \le N \le 1000). Во второй строке задается сама последовательность (разделитель — пробел). Элементы последовательности — целые числа, не превосходящие 10000 по модулю.

Формат вывода

Требуется вывести наибольшую возрастающую подпоследовательность данной последовательности. Если таких подпоследовательностей несколько, необходимо вывести одну (любую) из них.

Ограничения

Ограничение времени

1 с

Ограничение памяти

64 МБ

Пример 1

Ввод
6
3 29 5 5 28 6
Вывод
3 5 28

Пример 2

Ввод
10
4 8 2 6 2 10 6 29 58 9
Вывод
4 8 10 29 58 

Теги

Нужно войти, чтобы отправить решение.Войти