Hồng Hạc Bí Ẩn
Đề bài
Mô tả
Có chiếc lồng được đánh số từ đến . Lồng thứ chứa con hồng hạc, nhưng số lượng này được giữ bí mật. Bạn cần đoán ra số hồng hạc trong mỗi lồng.
Bạn có đồng xu. Mỗi đồng xu cho phép bạn hỏi một câu: tổng số hồng hạc trong các lồng từ đến (bao gồm cả hai đầu) là bao nhiêu, với điều kiện .
Đây là bài toán tương tác. Ban đầu chương trình phán xét cho bạn số nguyên . Sau đó bạn có thể đặt không quá câu hỏi, mỗi câu ở dạng ? L R (với ); phán xét trả về giá trị . Khi đã sẵn sàng, in ra đáp án ở dạng ! A_1 A_2 \ldots A_N rồi kết thúc chương trình. Bạn chỉ được đưa ra đáp án một lần.
Nhớ flush stdout sau mỗi dòng xuất (C++: cout.flush(), Python: print(..., flush=True)).
Dữ liệu vào
Đọc từ luồng nhập chuẩn theo cơ chế tương tác:
- Dòng đầu tiên chứa số nguyên là số lồng.
- Mỗi khi bạn hỏi
? L R, phán xét trả về một số nguyên là tổng .
Dữ liệu ra
- Để hỏi: in ra
? L R(với ). - Để trả lời: in ra
! A_1 A_2 \ldots A_N.
Ràng buộc
- Số câu hỏi không vượt quá .
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 6 5 15 10 |
? 1 2 ? 5 6 ? 3 4 ! 1 4 4 6 7 8 |
Mảng ẩn là . Các câu hỏi minh hoạ: , , . (Đây chỉ là một cách hỏi minh hoạ; lời giải tham khảo dùng cách khác.) |
| 3 1142 1857 1308 |
? 1 2 ? 1 3 ? 2 3 ! 549 593 715 |
Mảng ẩn . Hỏi và nên ; hỏi nên và . |
Bình luận