Clue Contest 06 - Trò chơi trên lá bài (hard version)

Xem dạng PDF

Gửi bài giải

Điểm: 25,00
Giới hạn thời gian: 5.0s
Giới hạn bộ nhớ: 1G
Input: stdin
Output: stdout

Tác giả:
Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Output Only, Pascal, PyPy, Python, Scratch, TEXT

Bài toán này và Trò chơi trên lá bài (easy version) là hai bài hoàn toàn khác nhau.

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

"Ái chà, thú vị đấy."

Đó là lời tán thưởng của noodles0428 khi bạn đã hoàn thành Trò chơi trên lá bài một cách hoàn toàn thuyết phục. Chính vì thế, cô ấy quyết định rủ bạn chơi một trò chơi nữa để thử thách khả năng suy luận của bạn.

Luật chơi như sau:

Trên tay noodles0428 đang có hai loại lá bài - trắng và đen. Nhiệm vụ của bạn là hãy xác định vị trí của một lá bài màu trắng bất kỳ.

Để có thể xác định màu của lá bài, bạn có thể đặt câu hỏi dưới dạng 1 i j với ý nghĩa như sau:

  • Nếu lá bài thứ ~i~ là lá bài màu trắng, noodles0428 sẽ nói thật về màu của lá bài thứ ~j~.
  • Nếu lá bài thứ ~i~ là lá bài màu đen, noodles0428 sẽ nói ngẫu nhiên về màu của lá bài thứ ~j~. Tức là cũng có thể là nói thật, và cũng có thể là nói dối. Tuy vậy, với mỗi lá bài ~i~ màu đen, bất luận bạn hỏi bao nhiêu lần, noodles0428 cũng sẽ nói dối hết, hoặc nói thật hết. Điều này có nghĩa, với mỗi lá bài ~i~ màu đen, việc nói dối hay thật là cố định.
  • Máy chấm sẽ trả về ~1~ nếu noodles0428 nói lá bài thứ ~j~ là lá bài màu đen, và ~0~ nếu cô ấy nói lá bài thứ ~j~ là lá bài màu trắng.

Bạn biết được một thông tin cực kì quan trọng: số lá bài màu trắng nhiều hơn số lá bài màu đen. Ví dụ, có ~5~ lá bài, sẽ có ít nhất ~3~ lá bài màu trắng. Bạn sẽ chiến thắng nếu bạn xác định được vị trí của một lá bài màu trắng bất kỳ mà không hỏi noodles0428 quá ~5000~ truy vấn.

TƯƠNG TÁC

  • Đầu tiên, bạn cần nhập số nguyên dương ~n~ (~1 \le n \le 1000~), là số lá bài mà noodles0428 đang cầm.
  • Nếu là lượt của bạn, bạn có hai lựa chọn sau:
    • Nếu bạn chưa biết đáp án: bạn có quyền đặt câu hỏi cho noodles0428 có dạng 1 i j, trên một dòng.
    • Nếu bạn đã có đáp án: bạn hãy in ra một dãy số có dạng như sau: 2 x với ~x~ là vị trí của một lá bài màu trắng mà bạn đoán, trên một dòng. Kết thúc lượt này, chương trình sẽ ngắt.
  • Nếu là lượt của noodles0428, cô ấy sẽ trả lời truy vấn của bạn dưới dạng ~0~ hoặc ~1~.

SAMPLE

Chương trình Máy chấm Giải thích
5 Có ~5~ lá bài với các màu là Trắng, Trắng, Đen, Trắng, Trắng
1 1 2 Bạn đặt câu hỏi về lá bài ~1~ và ~2~
0 Lá bài ~1~ màu trắng, và noodles0428 nói sự thật: lá bài thứ ~2~ cũng màu trắng.
1 2 1
0 Lá bài ~2~ màu trắng, và noodles0428 nói sự thật: lá bài thứ ~1~ cũng màu trắng.
1 3 4
1 Lá bài ~3~ màu đen, và noodles0428 nói dối: lá bài thứ ~4~ màu đen.
1 3 3
0 Lá bài ~3~ màu đen, và noodles0428 nói dối (do đã được cố định): lá bài thứ ~3~ màu trắng.
2 2 Bạn dự đoán lá bài số ~2~ màu trắng, và cần ngắt chương trình để chờ kết quả.

Bình luận

Hãy đọc nội quy trước khi bình luận.


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