AT_utpc2022_d Balance

题目描述

本题为**交互题**(你的程序需要和评测程序通过标准输入输出进行交互)。 你有 $N$ 个砝码。已知第 $i$ 个砝码的重量为 $P_i$,且 $(P_1, \dots, P_N)$ 是 $1$ 到 $N$ 的一个排列,但 $P_i$ 的具体值未知。此外,有一根标有 $-2N$ 到 $2N$ 之间整数刻度的杆,杆在位置 $0$ 处被悬挂。每一个标线的位置都有一个孔,每个孔最多只能挂一个砝码。最初,杆上没有挂任何砝码,杆处于平衡状态。 ![](https://cdn.luogu.com.cn/upload/vjudge_pic/AT_utpc2022_d/be2f7193d36c39b4589f2f07594859bcc06e615f04a559593ff793a3193edbfc.png) zkou 君希望最终把手上的 $N$ 个砝码全部挂到杆上,并且让杆保持平衡。你可以指示 zkou 君进行以下两种操作之一: - 从手上的砝码中选择一个,将其挂到尚未有砝码的位置 $x$ 的孔上。 - 从杆上取下一个已经挂着的砝码,放回手中。 每完成一个操作后,zkou 君会告诉你杆此时是向左倾斜、向右倾斜,还是处于平衡状态。请控制在 $10000$ 次操作以内,将手中的 $N$ 个砝码全部挂到杆上,并让杆平衡。可以证明,在题目的约束条件下,总存在这样的操作方案。 关于杆的倾斜和力矩定义:杆上已挂有 $k$ 个砝码,第 $j$ 个砝码的重量为 $w_j$,挂在位置 $x_j$,则杆的力矩 $M = \sum_{j=1}^k w_j x_j$。若 $M > 0$,则杆向右倾斜;若 $M = 0$,则杆平衡;若 $M < 0$,则杆向左倾斜。

输入格式

本题为交互题(你的程序需要和评测程序通过标准输入输出进行交互)。 首先,从标准输入读入 $N$。 > $N$ 接下来,在把手中的 $N$ 个砝码全部挂上并让杆达到平衡之前,你可以用如下格式向 zkou 君输出指令: 如果选择手上第 $i$ 个砝码,并将其挂到尚未有砝码的位置 $x$ 上: > 1 $i$ $x$ 其中,$i, x$ 必须满足 $1\leq i\leq N, -2N\leq x\leq 2N$。 如果将杆上已挂好的第 $i$ 个砝码取下,放回手中: > 2 $i$ 其中,$i$ 满足 $1\leq i\leq N$。 每个操作后,评测程序会通过标准输入反馈如下形式的结果: > $S$ 其中 $S$ 是下列字符串之一: - `Right`:操作后杆向右倾斜。 - `Balanced`:操作后杆达到平衡。 - `Left`:操作后杆向左倾斜。 - `-1`:输出不合法。 收到 `-1` 时,请立刻终止程序。导致输出不合法的常见原因如下: - 输出格式不符。 - 指令次数超过上限。 - 向已经挂着的孔再挂砝码。 - 向手中还未挂的砝码发起取下操作。 - 向已挂有砝码的位置再挂其它砝码。 当你已将 $N$ 个砝码全部挂到杆上,并且杆保持平衡,请输出一行 `0` 并立即退出程序。如果全部砝码已挂且杆平衡,则本题将判定为正确。 ``` 0 ```

输出格式

如上描述,依操作输出指令,每条指令单独一行,结尾需换行,并及时刷新输出。

说明/提示

### 部分得分 - 若你能解决 $1 \leq N \leq 100$ 的测试点,将获得 $30$ 分。 ### 注意事项 - **每次输出后请及时添加换行并刷新输出,否则可能因 TLE 被判为未通过。** - 若交互过程中出现非法输出或中途退出,评测结果为未定。 - 答案输出后(或收到 `-1` 后)请立即正常退出程序,否则评测结果未定。 - 特别注意,不要输出多余的换行或空格,这也会被视为输出格式错误。 ### 输入输出样例 以下为 $N = 2$ 且 $(P_1, P_2) = (2, 1)$ 时的交互样例。 | 输入 | 输出 | 说明 | | :-- | :-- | :-- | | `2` | | 读入 $N$ | | | `1 2 -4` | 将第 $2$ 个砝码挂到 $-4$ 位置 | | `Left` | | 杆向左倾斜 | | | `1 1 3` | 将第 $1$ 个砝码挂到 $3$ 位置 | | `Right` | | 杆向右倾斜 | | | `2 1` | 取下第 $1$ 个砝码 | | `Left` | | 杆向左倾斜 | | | `1 1 2` | 将第 $1$ 个砝码挂到 $2$ 位置 | | `Balanced` | | 杆平衡 | | | `0` | 所有砝码已挂、杆平衡,输出 `0` 并立即退出 | # 输入格式 如上交互格式描述。 # 输出格式 如上交互格式描述。 # 提示 ### 部分分数 - 对 $1 \leq N \leq 100$ 的数据点,答对则得 $30$ 分。 ### 注意点 - 每次输出指令需要换行并刷新。 - 遇到任何非法指令反馈或检测到异常时应立即退出。 - 出现多余的空格或换行也会被判为格式错误。 # 约束条件 - 输入均为整数。 - $1 \leq N \leq 3000$。 由 ChatGPT 5 翻译