Чергування#13092

Чергування

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

Дано рядок , який складається лише із символів та .

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

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

Вхідні дані

У першому рядку задано ціле число (1 \leq n \leq 10^5) — довжину рядка.

У другому рядку задано рядок довжини , який складається лише із символів та .

Вихідні дані

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

Приклади

Приклад 1

Loading
Loading

Приклад 2

Loading
Loading

Приклад 3

Loading
Loading

Примітка

У першому прикладі можна вставити символ між двома початковими нулями, а символ — між двома початковими одиницями. Отримаємо рядок 010101.

У другому прикладі після вставок рядок міститиме чотири нулі та дві одиниці, тому отримати потрібний рядок неможливо.

У третьому прикладі можна дописати , а потім у кінець рядка. Отримаємо рядок 0101010.

Оцінювання

  1. балів — n \leq 100.

  2. балів — n \leq 2000.

  3. балів — без додаткових обмежень.