Школа программиста

Забыли пароль?
[задачи] [курсы] [олимпиады] [регистрация]
Логин:   Пароль:    
Скрыть меню
О школе
Правила
Олимпиады
Фотоальбом
Гостевая
Форум
Архив олимпиад
Архив задач
Состояние системы
Рейтинг
Курсы
Новичкам
Работа в системе
Алгоритмы
Курсы ККДП
Дистрибутивы
Ссылки

HotLog


 

Возрастающая подпоследовательность

(Время: 2 сек. Память: 16 Мб Сложность: 45%)

Даны N целых чисел X1, X2, ..., XN. Требуется вычеркнуть из них минимальное количество чисел так, чтобы оставшиеся шли в порядке возрастания.

Входные данные

Первая строка входного файла INPUT.TXT содержит натуральное число N. Во второй строке записаны N чисел, разделенные пробелом. (N ≤ 10 000, 1 ≤ Xi ≤ 60 000)

Выходные данные

В первой строке выходного файла OUTPUT.TXT выведите количество невычеркнутых чисел, во второй – сами невычеркнутые числа через пробел в исходном порядке. Если вариантов несколько, следует вывести любой.

Пример

INPUT.TXTOUTPUT.TXT
15
1 3 5 2 4
3
1 3 5
26
2 5 3 4 6 1
4
2 3 4 6

Для отправки решения задачи необходимо зарегистрироваться и авторизоваться!

 Язык программирования C++
 Решение олимпиадных задач
 Региональные олимпиады
 Книги Фёдора Меньшикова
 Тренировочные олимпиады
 Олимпиадные задачи по программированию, 2006
 Тренировка 1
 Тренировка 2
 Тренировка 3
 Тренировка 4
 Тренировка 5
 Тренировка 6
 Тренировка 7
 Тренировка 8
 Тренировка 9
 Тренировка 10
 Тренировка 11
 Тренировка 12
 Тренировка 13
 Тренировка 14
 Тренировка 15
 A. Простые числа
 B. Выражение
 C. Возрастающая подпоследовательность
 D. Треугольник и точка
 E. Степень - 2
 F. Покер

Красноярский краевой Дворец пионеров, (c)2006 - 2019, E-mail: admin@acmp.ru