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

Sắp Xếp Tờ Giấy Tương Tác

Đề bài

Mô tả

Đây là bài tương tác.

n tờ giấy trắng xếp thành một hàng, đánh số từ 1 đến n từ trái sang phải. Trò chơi diễn ra trong m vòng. Ở mỗi vòng, hệ thống đưa cho bạn một số nguyên p trong đoạn [1,c], và bạn phải chọn một tờ giấy để viết số p lên đó (nếu tờ giấy đã có số sẵn, số cũ sẽ bị xóa và thay bằng p).

Bạn thắng nếu tại một thời điểm bất kỳ, tất cả các tờ giấy đều đã được ghi số và dãy số trên các tờ giấy đọc từ tờ 1 đến tờ n tạo thành dãy không giảm. Nếu sau m vòng bạn vẫn chưa thắng, bạn thua.

Có thể chứng minh rằng với các ràng buộc đã cho, luôn tồn tại chiến lược thắng. Khi bạn đã thắng, chương trình của bạn phải kết thúc ngay lập tức và không được đọc thêm số nào ở các vòng còn lại.

Dữ liệu vào

Dòng đầu chứa ba số nguyên n, m, c — số tờ giấy, số vòng và giới hạn trên của số được đưa ra. Đảm bảo mn/2·c.

Sau đó, ở mỗi vòng, chương trình của bạn đọc một dòng chứa một số nguyên p (1pc).

Dữ liệu ra

Sau khi nhận được p ở mỗi vòng, chương trình của bạn in ra một dòng chứa một số nguyên trong đoạn [1,n] — chỉ số tờ giấy bạn muốn viết p lên đó. Nhớ flush output sau mỗi lần in.

Khi đã thắng, kết thúc chương trình ngay.

Ràng buộc

  • 2n1000
  • 1c1000
  • m=n/2·c
  • 1pc ở mỗi vòng

Ví dụ

Chương trình Hệ thống Giải thích
2 4 4 Hệ thống gửi n=2, m=4, c=4
2 Vòng 1: p=2
1 Viết số 2 lên tờ 1. Trạng thái: [2,_]
1 Vòng 2: p=1
2 Viết số 1 lên tờ 2. Trạng thái: [2,1] — chưa thắng
3 Vòng 3: p=3
2 Ghi đè tờ 2 bằng 3. Trạng thái: [2,3] — đã thắng!

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