Люблять, не люблять#12343

Люблять, не люблять

1 секунда
256 мегабайтів
Складна

Дано масив довжиною .

Ми можемо виконати наступні дві операції з масивом:

  1. Вибрати будь-який індекс 1 \leq i \leq n, такий що a_i > 0, та відняти від нього одиничку.

  2. Вибрати будь-який індекс 1 \leq i \leq n, такий що a_i > 0, та для всіх , таких що i \leq j \leq n та a_j>0, відняти (іншими словами, відняти від усіх чисел, починаючи з вибраного до самого кінця списку, якщо ці числа ще не дорівнюють ).

Ми застосовуємо ці операції до тих пір, поки існує індекс 1 \le i \le n, такий що a_i > 0. Тобто припиняємо, коли у списку не залишиться жодного числа, що не дорівнює .

Вважаємо, що нас люблять, якщо ми зробили непарну кількість операцій, щоб всі числа масиву стали рівними .

Потрібно сказати, чи можливо зробити так, щоб нас любили, та якщо це можливо, то яка мінімальна кількість операцій нам для цього знадобиться.

Вхідні дані

Перший рядок містить одне ціле число (1 \le n \le 10^6) — довжина масиву .

Другий рядок містить цілих чисел a_1, a_2, \dots, a_n (1 \le a_i \le 10^9) — масив .

Вихідні дані

Виведіть у першому рядку «YES», якщо це можливо, або «NO», якщо неможливо.

Якщо відповідь «YES», у другому рядку потрібно вивести мінімальну кількість операцій.

Приклади

Приклад 1

Loading
Loading

Примітка

У прикладі можна разів видалити з усього масиву, а потім ще разів на суфіксі останніх чотирьох елементів.

Оцінювання

В задачі буде тестів(крім прикладів), кожен з яких буде оцінюватися у балів.