#aBC286F. [ABC286F] Guess The Number 2

[ABC286F] Guess The Number 2

AT_abc286_f [ABC286F] Guess The Number 2

题目描述

本题为交互题(你的程序将与评测程序通过标准输入输出进行交互)。

你和评测程序将按照以下步骤进行操作。操作分为阶段 11 和阶段 22,首先进行阶段 11,紧接着进行阶段 22

(阶段 11

  • 评测程序会选择一个 1110910^9 之间的整数 NN,该整数对你是隐藏的。
  • 你需要输出一个 11110110 之间的整数 MM
  • 然后你需要输出一个长度为 MM 的整数序列 A=(A1,A2,,AM)A=(A_1,A_2,\ldots,A_M),其中每个 AiA_i 满足 1AiM1 \leq A_i \leq M

(阶段 22

  • 评测程序会给你一个长度为 MM 的整数序列 B=(B1,B2,,BM)B=(B_1,B_2,\ldots,B_M)。其中 Bi=fN(i)B_i = f^N(i)f(i)f(i) 对于 1iM1 \leq i \leq M 定义为 f(i)=Aif(i)=A_ifN(i)f^N(i) 表示对 ii 反复应用 ffNN 次后得到的整数。
  • 你需要根据 BB 的信息,确定评测程序选择的整数 NN,并输出 NN

完成上述步骤后,程序应立即结束,才算作正确解答。

输入格式

本题为交互题(你的程序将与评测程序通过标准输入输出进行交互)。

(阶段 11

  • 首先,输出一个 11110110 之间的整数 MM,输出后请换行。

MM

  • 然后,输出一个由空格分隔的、每个元素在 11MM 之间的长度为 MM 的整数序列 A=(A1,A2,,AM)A=(A_1,A_2,\ldots,A_M),输出后请换行。

A1A_1 A2A_2 \ldots AMA_M

(阶段 22

  • 输入一个长度为 MM 的整数序列 B=(B1,B2,,BM)B=(B_1,B_2,\ldots,B_M)

B1B_1 B2B_2 \ldots BMB_M

  • 你需要求出整数 NN,并输出 NN,输出后请换行。

NN

如果输出不合法,评测程序会输出 -1。此时,提交已经被判为不正确,评测程序会立即结束,你的程序也应立即退出。

输出格式

见上文输入格式。

说明/提示

限制

  • NN1110910^9 之间的整数。

注意事项

  • 每次输出后都要在末尾加上换行,并及时刷新标准输出。否则可能会因输出缓冲导致 TLE。
  • 如果在交互过程中输出不合法,或程序中途退出,评测结果不确定。
  • 输出答案后(或收到 -1 后)应立即正常退出程序,否则评测结果不确定。
  • 特别注意,额外的换行也会被视为格式错误输出。

输入输出样例

以下是 N=2N=2 时的输入输出示例。

输入 输出 说明        评测程序选择了 $N=2$。$N$ 对你是隐藏的。    `4` 你输出 $M$。    `2 3 4 4` 你输出 $A=(2,3,4,4)$。    `3 4 4 4`   由于 $f^2(1)=3, f^2(2)=4, f^2(3)=4, f^2(4)=4$,评测程序会给你 $B=(3,4,4,4)$。    `2` 你根据 $B$ 推断出 $N=2$,输出 $N$ 并正常结束程序。

由 ChatGPT 4.1 翻译