Universal Cup Judging System

Universal Cup

Süre Sınırı: 6 s Bellek Sınırı: 1024 MB Toplam puan: 100 Zorluk: [göster]
İstatistikler

Plang Province では、$n=300$ 人の学生が Plang OI 2026 に参加しました。そのうち、金メダルを獲得した学生とそうでない学生がいます。 Plang Province の学生には奇妙な習慣があります。金メダルを獲得しなかった場合、正直に「獲得していない」と言います。しかし、金メダルを獲得した場合、確率 $p$ で「獲得した」と言い、残りの確率 $1-p$ で「獲得していない」と言います。なお、各応答はランダムであり、以前の応答とは無関係です。

あなたは Plang Province のコーチとして、各学生が金メダルを獲得したかどうかを知りたいです。その後、Una に以下の操作を行わせることができます。

  • 異なる学生をいくつか選び、Una にそれぞれの学生が金メダルを獲得したかどうかを尋ねさせます。Una は「はい」と答えた人数を教えてくれます。

Plang OI 2025 の金メダルラインは 571 点でした。平均して 568 回のクエリで答えを見つける必要があります。 Plang OI の制限のため、金メダルを獲得した学生はちょうど 48 人であると仮定できます。

インタラクションプロトコル

これはインタラクティブな問題です。各プリントの後、必ず出力バッファをフラッシュしてください。出力バッファをフラッシュするには、以下を使用できます。

  • C/C++ では fflush(stdout) または cout.flush()
  • Java および Kotlin では System.out.flush()
  • Python では sys.stdout.flush()

まず、テストケースの数 $T$ ($T=20$) を示す整数を読み込みます。 各テストケースについて、学生の数 $n$ ($n=300$) を示す整数を読み込みます。

クエリを行うには、"? k P1 P2 ... Pk" という形式の行を出力します($1 \le P_i \le n$、$P_i \ne P_j$ for $i \ne j$)。 次に、Una が見つけた答えを示す整数を読み込みます。クエリが無効である場合、または合計で $568T$ 回を超えるクエリを行った場合、ジャッジプログラムは -1 を出力します。-1 を読み込んだら、未定義の動作を避けるためにすぐに終了してください。

答えが得られたら、"! s1 s2 ... sn" という形式の行を出力します。ここで、$s_i=1$ は $i$ 番目の学生が金メダルを獲得したことを示し、$s_i=0$ はそうでないことを示します。 次に、OK または WA という単語を読み込み、答えが正しいかどうかを示します。プログラムが WA を読み込んだ場合、未定義の動作を避けるためにすぐに終了してください。

ジャッジはアダプティブではないことに注意してください。つまり、クエリの後でも答えは変わりません。テストケースは最大で 10 個です。

入出力例

入力 1

1

出力 1

? 2 1 2

入力 2

2

出力 2

? 1 1

入力 3

0

出力 3

? 1 2

入力 4

0

出力 4

! 0 1

入力 5

1

出力 5

OK

注記

この例は参照用であり、$T=20$ および $n=300$ を満たしておらず、最終テストには表示されません。 テストツールが提供されており、競技者はソリューションを開発およびテストできます。このツールは添付ファイルからダウンロードできます。「-h」オプションを付けてツールを実行すると、ツールの使用方法が説明されるはずです。テストツールは、一部のテストシナリオと、実際のジャッジプログラムの一部の機能のみを実装します。

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.