QOJ.ac

QOJ

Time Limit: 2 s Memory Limit: 512 MB Total points: 100

#3076. เกม 2048

Statistics

เกมคอมพิวเตอร์บางเกมสนุกมาก และโจทย์ข้อนี้อาจเกี่ยวกับเกมหนึ่งในนั้น

กำหนดลำดับของบล็อกหนึ่งมิติ โดยความยาวของแต่ละบล็อกเป็นกำลังของสอง เป้าหมายของเกมคือรวมบล็อกทั้งหมดให้เป็นบล็อกใหญ่เพียงบล็อกเดียว บล็อกจะปรากฏทีละบล็อก และคุณต้องตัดสินใจว่าจะนำแต่ละบล็อกไปต่อชิดทางซ้ายหรือทางขวาของบล็อกก่อนหน้า

ทุกครั้งที่บล็อกขนาดเท่ากันสองบล็อกอยู่ติดกัน บล็อกทั้งสองจะรวมเป็นบล็อกเดียวที่มีความยาวเป็นสองเท่าของแต่ละบล็อกเดิม ตราบใดที่ยังรวมได้ บล็อกที่เกิดขึ้นจะรวมกับบล็อกข้างเคียงทันที ตัวอย่างเช่น หากลำดับปัจจุบันคือ $2,4,16$ การต่อ $2$ ทางซ้ายจะได้ $8,16$ ส่วนการต่อทางขวาจะได้ $2,4,16,2$ สังเกตว่า ณ เวลาใด ๆ จะมีคู่บล็อกที่รวมกันได้ไม่เกินหนึ่งคู่

คุณแพ้เกมอีกแล้ว และสงสัยว่ามีทางชนะตั้งแต่แรกหรือไม่ จงวิเคราะห์ลำดับเพื่อหาคำตอบ

ข้อมูลนำเข้า

บรรทัดแรกของข้อมูลนำเข้ามีจำนวนกรณีทดสอบ $T$ จากนั้นเป็นคำอธิบายของแต่ละกรณีทดสอบ:

แต่ละกรณีทดสอบมีสองบรรทัด บรรทัดแรกมีจำนวนเต็มบวก $n\le1\,000$ ซึ่งเป็นความยาวของลำดับ บรรทัดถัดไปมีลำดับความยาวบล็อก $n$ ค่า แต่ละค่าเป็นกำลังของสอง ผลรวมความยาวทั้งหมดไม่เกิน $2^{13}$

ขนาดไฟล์ข้อมูลนำเข้าไม่เกิน 0.4 MiB

ข้อมูลส่งออก

สำหรับแต่ละกรณีทดสอบ ให้พิมพ์หนึ่งบรรทัดเป็นคำว่า “no” หากไม่สามารถชนะเกมได้ มิฉะนั้นให้พิมพ์คำที่ประกอบด้วยตัวอักษร “l” และ “r” จำนวน $n$ ตัว เพื่อระบุว่าควรต่อบล็อกที่สอดคล้องกันทางซ้ายหรือทางขวา สำหรับบล็อกแรกจะเลือกด้านใดก็ได้

ตัวอย่าง

ข้อมูลนำเข้า 1

3
9
2 8 4 1 1 4 4 4 4
5
2 16 4 8 2
3
2 2 2

ข้อมูลส่งออก 1

rrrlllrrr
no
no

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.