CSES - Hidden Integer | Số Nguyên Ẩn

Xem PDF



Tác giả:
Dạng bài
Ngôn ngữ cho phép
Assembly, Awk, C, C#, C++, Clang, Cobol, D, Groovy, Haskell, JS, Java, Kotlin, Lua, Node JS, OCaml, ObjectiveC, Output, PHP, Pascal, Perl, Prolog, Pypy, Pypy 3, Python, Ruby, Rust, Scala, Scratch, Swift
Điểm: 1000 (p) Thời gian: 1.0s Bộ nhớ: 512M Input: bàn phím Output: màn hình

Có một số nguyên ẩn \(x\). Nhiệm vụ của bạn là tìm giá trị của \(x\).

Để làm điều này, bạn có thể đặt câu hỏi: bạn chọn một số nguyên \(y\) và sẽ được cho biết liệu \(y < x\) hay không.

Interaction

Đây là một bài toán tương tác. Chương trình của bạn sẽ tương tác với trình chấm qua đầu vào và đầu ra chuẩn. Bạn có thể bắt đầu đặt câu hỏi ngay lập tức.

Ở lượt của mình, bạn có thể in một trong các dạng sau:

  • "\(?\ y\)", với \(1 \le y \le 10^9\): hỏi liệu \(y < x\) hay không. Trình chấm sẽ trả về YES nếu \(y < x\)NO nếu không.

  • "\(!\ x\)": báo rằng số nguyên ẩn là \(x\). Chương trình của bạn phải kết thúc sau đó.

Mỗi dòng phải được theo sau bởi ký tự xuống dòng. Bạn phải đảm bảo đầu ra được flush sau khi in mỗi dòng.

Constraints

  • \(1 \le x \le 10^9\)

  • bạn có thể hỏi nhiều nhất \(30\) câu hỏi loại \(?\)

Example

? 3
YES
? 6
YES
? 7
NO
! 7

Bình luận

Mới nhất
Tải bình luận...

Không có bình luận nào.