QOJ.ac

QOJ

حد الوقت: 2 s حد الذاكرة: 256 MB مجموع النقاط: 100

#374. 间谍活动入门

الإحصائيات

在一个遥远的国度,政府由 $n$ 名大臣组成。国王发现其中恰好有 $2$ 名大臣是间谍,他们会将所有秘密告诉敌人,但国王不知道具体是哪两位。

国王决定通过一系列实验来找出间谍。在每次实验中,他会将一个秘密告诉某一部分大臣,并检查这些大臣中是否有人泄露了秘密(当然是通过他自己的间谍渠道)。如果有人泄露,他就知道在这些大臣中至少有一名间谍;如果没人泄露,他就知道这些大臣中没有间谍。

当然,国王希望用尽可能少的实验次数找出间谍。你需要求出在最坏情况下所需的实验次数,并给出确定间谍的策略。

输入格式

输入包含一个整数 $n$,$3 \le n \le 64$。

输出格式

在输出的第一行,打印最坏情况下所需的实验次数 $r$,以及描述最优策略的行数 $s$。接下来的 $s$ 行中,第 $t$ 行($1 \le t \le s$)应为 “CHECK $k$ $a_1$ $a_2$ $\dots$ $a_k$ $p$ $q$” 或 “ANSWER $a$ $b$”。第一种表示“向大臣 $a_1, a_2, \dots, a_k$($1 \le a_i \le n, a_i \neq a_j, 0 \le k \le n$)透露秘密,如果他们中有间谍,则跳转到第 $p$ 行,否则跳转到第 $q$ 行($t+1 \le p, q \le s$,我们只能跳转到后续的步骤)”。第二种表示“判定大臣 $a$ 和 $b$($1 \le a, b \le n, a \neq b$)是间谍”。策略的执行从第一行开始。每条命令中的大臣编号顺序不限。

行数 $s$ 不得超过 $10^5$。如果存在多种在最坏情况下实验次数均为 $r$ 的策略,输出任意一种即可。

样例

输入格式 1

4

输出格式 1

3 11
CHECK 1 1 2 3
CHECK 1 2 6 7
CHECK 1 2 6 7
ANSWER 1 2
CHECK 1 3 8 9
CHECK 1 3 10 11
ANSWER 3 4
ANSWER 1 3
ANSWER 1 4
ANSWER 2 3
ANSWER 2 4

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.