AT_stpc2025_1_g Don't make zero

题目描述

本题为**交互题**(你编写的程序与评测系统通过标准输入输出进行交互)。 满足以下两个条件的整数序列被称为**non-zero 数列**: - 任意两项互不相同。 - 任意非空(不一定连续)子序列的元素和不为 $0$。 例如,$(5)$,$(1,-2,3)$,$(-3,7,5,-6)$ 等是 non-zero 数列;而 $(0)$,$(1,-3,1)$,$(2,3,-2)$,$(1,2,3,-4)$ 等不是 non-zero 数列。 给定正整数 $N, X$。 请你依次输出一个长度为 $X \;(=2 \lfloor \sqrt N \rfloor - 1)$,每一项均为 $-N$ 到 $N$ 之间的整数的 non-zero 数列 $(A_1, A_2, \dots, A_X)$。其中,每一项的符号由评测程序在输出该项之前指定。 共给定 $R$ 组测试数据,请分别与评测程序进行交互。

输入格式

本题为交互题(你的程序与评测系统通过输入输出交互)。首先,你需要从标准输入读取测试数据组数 $R$。 > $R$ 接下来,进行 $R$ 次交互。每组测试数据首先给出正整数 $N$ 与 $X$。 > $N\ X$ 然后,对于每个 $i=1,2,\dots,X$,按以下顺序反复进行交互: > 首先,给出 $A_i$ 的符号 $op_i$。 > > > $op_i$ > > $op_i$ 只会为 `+`、`-`、`!` 中的一种,其含义如下: > > - $op_i=$ `+` 时,$A_i$ 必须为正整数。 > - $op_i=$ `-` 时,$A_i$ 必须为负整数。 > - $op_i=$ `!` 时,表示你的程序被判定为答案错误。**此时请立即退出程序。** > > 然后,你需要输出一个 $-N$ 到 $N$ 范围,并且符号符合要求的整数 $A_i$(正数可以不带正号)。 > $A_i$ 你所输出的 $(A_1,A_2,...,A_X)$ 必须是 non-zero 数列。

输出格式

无。

说明/提示

### 注意事项 - 每次输出后请及时刷新标准输出(flush),否则可能导致TLE。 - 程序的运行时间及内存消耗会与评测程序共同计入。评测程序最多消耗 $100$ ms 时间和 $5$ MiB 内存。 ### 输入输出示例 | 输入 | 输出 | 说明 | |------|------|------| | `2` | | 给出测试数据组数 $R$。 | | `4 3` | | 第 $1$ 组测试数据的 $N,X$。 | | `-` | | $op_1 = -$,$A_1$ 必须为负整数。 | | `-4` | | 输出 $A_1=-4$。 | | `-` | | $op_2 = -$,$A_2$ 必须为负整数。 | | `-1` | | 输出 $A_2=-1$。 | | `+` | | $op_3 = +$,$A_3$ 必须为正整数。 | | `2` | | 输出 $A_3=2$。$(A_1, A_2, A_3)=(-4, -1, 2)$ 为符合条件的 non-zero 数列,本组数据正确通过。 | | `3 1` | | 第 $2$ 组测试数据的 $N,X$。 | | `+` | | $op_1 = +$,$A_1$ 必须为正整数。 | | `3` | | 输出 $A_1=3$。$(A_1)=(3)$ 满足 non-zero 数列要求,本组数据正确通过。 | # 输入格式 参见题目描述。 # 输出格式 参见题目描述。 # 提示 参见题目描述、注意事项与样例说明。 ### 约束条件 - $1\leq R\leq 10^4$ - $1\leq N\leq 10^4$ - $X = 2\lfloor \sqrt{N} \rfloor - 1$ - $R$ 组测试数据中所有 $N$ 的总和不超过 $10^4$。 由 ChatGPT 5 翻译