Dịch bệnh ở Monstropolis
Đề bài
Mô tả
Có con quái vật xếp thành một hàng, con thứ có cân nặng . Chúng bắt đầu ăn thịt lẫn nhau theo quy tắc sau:
Một con quái vật có thể ăn một con đứng ngay cạnh nó (ngay trước hoặc ngay sau trong hàng) nếu cân nặng của nó lớn hơn thực sự cân nặng của con bị ăn. Sau khi con ăn con , cân nặng của tăng thêm đúng bằng cân nặng của , con biến mất khỏi hàng và những con phía sau dồn lên để hàng không có chỗ trống. Mỗi lần chỉ có một con bị ăn, và một con quái vật có thể ăn liên tiếp nhiều con.
Sau một thời gian, trong hàng còn lại con quái vật, con thứ có cân nặng (vẫn tính theo thứ tự từ đầu đến cuối hàng).
Hãy đưa ra một thứ tự ăn thịt bất kỳ dẫn từ hàng ban đầu đến hàng cuối cùng, hoặc xác định rằng điều đó không thể xảy ra.
Dữ liệu vào
- Dòng đầu chứa số nguyên : số quái vật ban đầu.
- Dòng thứ hai chứa số nguyên : cân nặng ban đầu.
- Dòng thứ ba chứa số nguyên : số quái vật còn lại.
- Dòng thứ tư chứa số nguyên : cân nặng lúc sau.
Dữ liệu ra
Nếu không có thứ tự ăn nào dẫn đến hàng cuối cùng, in ra một dòng duy nhất NO.
Ngược lại, in ra YES ở dòng đầu tiên. Trong dòng tiếp theo, in ra các hành động theo đúng thứ tự thời gian. Mỗi dòng chứa số nguyên : vị trí (đánh số từ ) của con quái vật trong hàng hiện tại thực hiện việc ăn, cách nhau một dấu cách là ký tự L nếu nó ăn con đứng ngay trước nó, hoặc R nếu nó ăn con đứng ngay sau nó. Sau mỗi lần ăn, hàng được đánh số lại từ đầu.
Nếu có nhiều đáp án, in ra bất kỳ đáp án nào.
Ràng buộc
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 5 1 1 1 3 3 3 2 1 6 |
NO | Để có được , hai con đầu tiên (cùng nặng ) phải hợp lại, nhưng không con nào ăn được con kia vì cân nặng bằng nhau. Không thể. |
| 6 1 2 2 2 1 2 2 5 5 |
YES 2 L 1 R 2 R 2 R |
Nhóm hợp thành và nhóm hợp thành . Con thứ ăn con trước nó, rồi tiếp tục ăn để tạo ra hàng . |
| 5 1 2 3 4 5 1 15 |
YES 5 L 4 L 3 L 2 L |
Con nặng nhất () lần lượt ăn con đứng trước nó cho đến khi nuốt hết cả hàng, đạt cân nặng . |
Bình luận