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.