Ghế Màu
Nộp bài giải
Điểm:
1,00 (OI)
Giới hạn thời gian:
2.0s
Giới hạn bộ nhớ:
256M
Input:
stdin
Output:
stdout
Tác giả:
Dạng bài
Ngôn ngữ cho phép
C++, Go, Java, Kotlin, Pascal, Python, Scratch
Có chiếc ghế xếp thành vòng tròn, đánh số từ đến . Ghế kề với ghế (với ) và ghế kề với ghế . Mỗi ghế được tô màu đỏ (R) hoặc xanh (B).
Nhiệm vụ của bạn là tìm hai ghế kề nhau có cùng màu.
Giao thức tương tác
Đây là bài toán tương tác. Chương trình của bạn giao tiếp với hệ thống đánh giá thông qua đầu vào/ra chuẩn.
Đầu tiên, chương trình đọc số nguyên .
Sau đó, bạn có thể thực hiện hai loại thao tác:
? i(với ): Hỏi màu của ghế thứ . Hệ thống trả lờiR(đỏ) hoặcB(xanh).! i: Khai báo rằng ghế và ghế kế tiếp (ghế , hoặc ghế nếu ) có cùng màu. Chương trình kết thúc sau thao tác này.
Bạn được phép hỏi tối đa câu hỏi dạng ?.
Quan trọng: Sau mỗi lần in ra, bạn phải flush output:
- C++:
cout << endl;hoặccout.flush(); - Python:
print(..., flush=True)
Ràng buộc
- là số lẻ
- Số truy vấn tối đa:
Ví dụ
| Chương trình | Hệ thống | Giải thích |
|---|---|---|
| 5 | ghế. Màu: R B B R B | |
| ? 1 | R | Ghế 1 màu đỏ |
| ? 2 | B | Ghế 2 màu xanh |
| ? 3 | B | Ghế 3 màu xanh |
| ! 2 | Ghế 2 và ghế 3 đều xanh. Đúng! |
Ghi chú
Vì là số lẻ, luôn tồn tại ít nhất một cặp ghế kề nhau có cùng màu (nguyên lý chuồng bồ câu: không thể tô xen kẽ hoàn hảo trên vòng tròn có số lẻ đỉnh).
Bình luận