QOJ.ac

QOJ

Time Limit: 1 s Memory Limit: 1024 MB Total points: 100 Hackable ✓

#18933. Ранкові ліки

Statistics
problem_18933_a3d09dfd60c8e69e0c4e0ae286b322fb.png

Субін отримала рецепт у лікарні та купила в аптеці запас ліків на $N$ днів. Денна норма ліків складається з одного пакетика ранкових ліків, одного обідніх та одного вечірніх, а всього $3N$ пакетиків із ліками з'єднані в ряд у такому порядку:

ранкові ліки, обідні ліки, вечірні ліки, ранкові ліки, обідні ліки, вечірні ліки, $\cdots$

Звичайна людина просто їла б тричі на день і по черзі відрізала та приймала пакетики з ліками від самого початку. Проте розпорядок дня Субін незвичайний. У якісь дні вона лише вечеряє, а в якісь пропускає сніданок. Тому Субін хоче приймати ліки не по порядку з початку, а відповідно до порядку своїх прийомів їжі. Звісно, Субін збирається прийняти всі ліки, не залишивши жодного пакетика.

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

За заданим порядком, у якому Субін хоче приймати ліки, визначте, чи можна прийняти всі ліки в цьому порядку з дотриманням наведеної вище умови.

Вхідні дані

У першому рядку задано ціле число $N$, що показує, на скільки днів куплено ліків. ($1 \le N \le 1\,000\,000$)

У другому рядку задано рядок $S$ довжини $3N$, що визначає порядок, у якому Субін хоче приймати ліки. Рядок $S$ складається лише із символів B, L, D, причому кожен із трьох символів зустрічається рівно $N$ разів.

Символ B означає ранкові ліки, L — обідні ліки, а D — вечірні ліки.

Вихідні дані

Якщо можна прийняти всі ліки в порядку рядка $S$, дотримуючись умови, виведіть Yes, інакше виведіть No.

Приклади

Вхідні дані 1

1
LBD

Вихідні дані 1

No

Вхідні дані 2

2
BLDDBL

Вихідні дані 2

Yes

Примітка

У першому прикладі спочатку пакетики з ліками розташовані від початку в порядку: ранкові ліки, обідні ліки, вечірні ліки. Першими потрібно прийняти обідні ліки, але вони знаходяться ні на самому початку, ні в самому кінці, тому прийняти їх із дотриманням умови неможливо.

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

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.