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

Số bí mật của Flitwick

Đề bài

Mô tả

Thầy Flitwick đã chọn một số nguyên bí mật x trong khoảng từ 1 đến n.

Bạn có thể đặt câu hỏi theo định dạng:

? y

Thầy Flitwick sẽ trả lời:

  • YES nếu xy
  • NO nếu x>y

Quy tắc đặc biệt

Tối đa một lời nói dối: Thầy Flitwick được phép nói dối nhiều nhất một lần. Cụ thể:

  • Đúng một câu trả lời có thể sai
  • Tất cả các câu trả lời còn lại đều đúng

Thầy Flitwick cố định x từ đầu: Khác với một số bài khác, Thầy Flitwick đã quyết định giá trị x trước khi bạn bắt đầu hỏi và không thay đổi.

Sau khi tìm ra đáp án, in ra:

! x

Dữ liệu vào

Dòng đầu tiên chứa số nguyên n.

Dữ liệu ra

Để hỏi: ? y (với 1yn)

Để trả lời: ! x

Sau mỗi truy vấn, bạn phải flush output.

Ràng buộc

  • 1n106
  • Bạn được hỏi tối đa 40 câu hỏi

Ví dụ

Input Output
100
? 50
YES
? 25
NO
? 37
NO
? 43
YES
? 40
YES
? 38
NO
? 39
NO
! 40

Ghi chú

Trong ví dụ, x=40. Thầy Flitwick có thể đã nói dối ở một trong các câu hỏi, nhưng ta vẫn xác định được x=40.

Tham khảo: Hướng dẫn giải bài tập Interactive

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.47 awk 1.3.4 gcc 16.2.0 dotnet 10.0.400 g++ 16.2.0 g++-themis 16.2.0 g++17 16.2.0 g++20 16.2.0 g++23 16.2.0 clang++ 22.1.8 dmd 2.113.0 dart 3.13.2 gforth 0.7.3 gfortran 12.2.0 go 1.27.0 groovyc 5.1.1 javac 25.0.4 node 26.8.1 julia 1.12.7 kotlinc 2.4.10 lean 4.33.1 sbcl 2.2.9 lua 5.4.9 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.10 pike 8.0 swipl 9.0.4 pypy3 7.3.23 python3 3.14.7 racket 8.7 ruby 4.0.6 rustc 1.98.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 swiftc 6.3.3 tclsh 8.6 bun 1.4.0 deno 2.9.6 v 0.5.2 zig 0.16.0