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

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


 

Возрастающий массив

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

Задан массив A[1..N] из N целых чисел.

Требуется определить: возможна ли в массива замена некоторых его элементов Ai на –Аi таким образом, чтобы массив стал неубывающим?

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

В первой строке входного файла INPUT.TXT содержится целое число N – количество элементов в массиве (1 ≤ N ≤ 105). В следующей строке дано N целых чисел Ai – исходный массив (|Ai| ≤ 105).

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

В выходной файл OUTPUT.TXT выведите «No», если нельзя заменить некоторые элементы Ai на –Аi, чтобы массив стал неубывающим. В противном случае в первой строке следует вывести «Yes», а во второй – N чисел Bi, которые образуют неубывающий массив, и для всех 1 ≤ i ≤ N выполняется Bi = |Ai|. Если существует несколько вариантов решения данной задачи, выведите любой из них.

Примеры

INPUT.TXTOUTPUT.TXT
15
1 -1 2 -3 6
Yes
-1 1 2 3 6
23
2 1 0
Yes
-2 1 0
33
1 2 1
No

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


 Язык программирования C++
 Решение олимпиадных задач
 Региональные олимпиады
 Книги Фёдора Меньшикова
 Тренировочные олимпиады
 Личные олимпиады
 Командные олимпиады
 Первая командная олимпиада
 Вторая командная олимпиада
 Третья командная олимпиада
 Четвертая командная олимпиада
 Пятая командная олимпиада
 A. Сезонное весеннее обострение
 B. Возрастающий массив
 C. Волшебный прямоугольник
 D. Эффект домино
 E. Независимое множество
 F. Искусство алхимии
 G. Робот
 H. Кроссворд

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