#P15912. [TOPC 2024] Harmonious Passage of Magicians
[TOPC 2024] Harmonious Passage of Magicians
说明
有一条非常狭窄的巷子,两队魔法师想从巷子的两端穿过。他们只有在两队之间只剩下一个空格时,才会看到对方。由于巷子太窄,他们无法转身或后退来避免相撞。然而,作为魔法师,他们可以使用魔法进行短距离传送,从而越过另一个人。此外,为了保持秩序,同一队的魔法师不能改变他们之间的相对顺序,因此他们不能使用这个魔法来越过自己队伍的魔法师。
为了更清晰地说明,我们假设第一队有 名魔法师,从左侧开始,编号为 到 ;第二队有 名魔法师,从右侧开始,编号为 到 。
这条狭窄的巷子共有 个空格。最左边的 个空格被第一队占据,面朝右;最右边的 个空格被第二队占据,面朝左。巷子的初始布局如下:。
当一名魔法师移动时,必须遵守以下规则:
- 如果他正前方有一个空格,他可以走入该空格。
- 如果他正前方有一名对方队伍的魔法师,且该魔法师的正后方有一个空格,他可以使用魔法移动到那个空格。
最终,第一队将占据最右边的 个空格,第二队将占据最左边的 个空格。
为了帮助他们穿过巷子,请提供一种移动策略。该策略将由一个序列 来描述,其中 表示在第 步中,编号为 的魔法师将移动到一个空位。
如果存在多种策略,请输出字典序最小的策略。字典序是一种基于字母或数字顺序比较字符串或元素序列的方法。在本问题中,“字典序最小”的策略指的是当策略表示为数字序列时,按数值顺序排在最前面的策略。
更具体地说:
- 每个策略表示为一个数字序列:
- 两个策略逐元素比较:
- 如果一个策略的第一个元素小于另一个策略的第一个元素,则该策略的字典序更小。
- 如果第一个元素相等,则比较第二个元素,依此类推。
输入格式
第一行包含一个整数 ,表示测试用例的数量。接下来的 行,每行包含两个整数 和 ,分别表示第一队魔法师的数量和第二队魔法师的数量。
输出格式
输出 行。第 行应包含第 个测试用例中帮助魔法师穿过狭窄巷子的移动策略。如果存在多种策略,则输出字典序最小的策略。
2
2 2
2 3
2 3 4 2 1 3 4 1
2 3 4 2 1 3 4 5 2 1 5
提示
- 所有测试用例的 之和不超过
- 所有测试用例的 之和不超过
翻译由 DeepSeek V3.2 完成
京公网安备 11011102002149号