trang chủ / bài tập / flamingo

Hồng Hạc Bí Ẩn

Đề bài

Mô tả

N chiếc lồng được đánh số từ 1 đến N. Lồng thứ i chứa Ai 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ó N đồ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ừ L đến R (bao gồm cả hai đầu) là bao nhiêu, với điều kiện L<R.

Đâ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 N. Sau đó bạn có thể đặt không quá N câu hỏi, mỗi câu ở dạng ? L R (với 1L<RN); phán xét trả về giá trị AL+AL+1++AR. 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 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 AL++AR.

Dữ liệu ra

  • Để hỏi: in ra ? L R (với 1L<RN).
  • Để trả lời: in ra ! A_1 A_2 \ldots A_N.

Ràng buộc

  • 3N103
  • 0Ai103
  • Số câu hỏi không vượt quá N.

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à [1,4,4,6,7,8]. Các câu hỏi minh hoạ: A1+A2=5, A5+A6=15, A3+A4=10. (Đâ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 [549,593,715]. Hỏi A1+A2=1142A1+A2+A3=1857 nên A3=18571142=715; hỏi A2+A3=1308 nên A2=1308715=593A1=1142593=549.

Bình luận

Không có bình luận tại thời điểm này.

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.46 awk 1.3.4 gcc 16.1.0 csc 6.12.0.200 g++ 16.1.0 g++-themis 16.1.0 g++17 16.1.0 g++20 16.1.0 g++23 16.1.0 clang++ 22.1.6 dmd 2.112.0 dart 3.12.1 gforth 0.7.3 gfortran 12.2.0 go 1.26.3 groovyc 5.0.6 javac 25.0.3 node 26.2.0 kotlinc 2.3.21 sbcl 2.2.9 lua 5.4.8 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.6 pike 8.0 pypy3 7.3.23 python3 3.14.5 racket 8.7 ruby 4.0.5 rustc 1.96.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 tclsh 8.6 bun 1.3.14 deno 2.8.1 v 0.5.1 zig 0.16.0