Загублений рядок
Обмеження: 2 сек., 256 МіБ
У Марічки є рядок з символів A
, B
та
C
.
Спершу вона для кожних трьох сусідніх символів порахувала, який символ серед них найчастіше зустрічається, та записала скільки разів зустрічається цей символ. Після цього у неї утворилась послідовність, у якій кожне значення від 1 до 3. Далі вона вирішила записати такі пари (\(a_i\), \(b_i\)), які означають що у послідовності було записано \(b_1\) значень \(a_1\), потім \(b_2\) значень \(a_2\) і так далі.
Марічка розказала Зенику, які пари чисел вона отримала, а хлопцю стало цікаво, чи дійсно ж існує такий рядок, що може утворити ці пари.
Наприклад, якщо початково у Марічки є рядок CABBBCAB
, то
вона спершу запише послідовність [1, 2, 3, 2, 1, 1], адже серед символів
CAB
усі символи зустрічаються 1 раз, серед символів
ABB
символ B
зустрічається 2 рази, серед
символів BBB
символ B
зустрічається 3 рази і
так далі. Отже, Марічка записує такі пари: [(1, 1), (2, 1), (3, 1), (2,
1), (1, 2)].
Вхідні дані
У першому рядку задано одне ціле число \(k\) — кількість пар. У наступних \(k\) рядках задано по 2 цілих числа \(a_i\) та \(b_i\).
Вихідні дані
Виведіть TAK
, якщо існує рядок, що утворює задані пари,
або NI
в протилежному випадку.
Обмеження
\(1 \le k \le 2 \cdot 10^5\),
\(1 \le a_i \le 3\), \(a_i \ne a_{i+1}\),
\(1 \le b_i \le 10^9\).
Приклади
Вхідні дані (stdin) | Вихідні дані (stdout) |
---|---|
5 1 1 2 1 3 1 2 1 1 2 | TAK |
Вхідні дані (stdin) | Вихідні дані (stdout) |
---|---|
2 1 1 3 1 | NI |
Надіслати розв'язок
Element Type | Створено | Хто | Задача | Компілятор | Результат | Час (сек.) | Пам'ять (МіБ) | № | Дії |
---|
Element Type | Створено | Хто | Задача | Компілятор | Результат | Час (сек.) | Пам'ять (МіБ) | № | Дії |
---|