Коригування масивів
Голова журі олімпіади згенерував декілька числових масивів, які будуть вхідними даними для цікавої задачі. Але ці масиви йому не подобаються, тому що вони не відсортовані! Сортувати ці масиви голова журі не хоче. Єдине що він збирається робити трішки відкоригувати масиви, змінюючи знаки у деяких. Іншими словами, можна робити дуже просту операцію: деякі елементи замінити на .
Напишіть програму, яка з'ясує, чи зможе голова журі за допомогою описаної операції зробити масив відсортованим за неспаданням.
Input
У першому рядку вхідних даних дано ціле число кількість елементів у масиві (). У наступному рядку дано цілих чисел масив, який голова журі олімпіади хоче зробити відсортованим за неспаданням ().
Output
Якщо не можна замінити деякі елементи на , так щоб масив став відсортованим за неспаданням, виведіть «NO
».
Інакше, у першому рядку виведіть «YES
». У другому рядку виведіть чисел масив, для всіх елементів якого виконується:
;
або .
Examples
Scoring
У цієї задачі є чотири підзадачі, для яких виконуються додаткові обмеження, вказані в таблиці нижче. Бали за кожну підзадачу нараховуються тільки у випадку, якщо пройдено всі тести цієї підзадачі, а також всі тести всіх необхідних підзадач. Номери необхідних підзадач також вказані в таблиці.
( балів): ;
( балів): ; ;
( балів): ; ;
( балів): немає додаткових обмежень;