#1238. [202406月赛] 军棋
[202406月赛] 军棋
背景
最近在方块鸟的同学间兴起了「桌游」热,比如棋类的如飞行棋、五子棋、军棋、斗兽棋,卡牌类的如三国杀,模拟策略类的比如大富翁、卡坦岛等等。想要在这些游戏里面取得胜利,需要开动脑筋制定最优策略,但有时又得拥抱运气 (比如飞行棋里一直仍不出6 ),是很好的娱乐活动。
描述
小Y从家里带来了一副「军棋」,「军棋」就是模拟战争排兵布阵的策略游戏,可以两人玩,也可以四人玩,下图就是两人玩的棋盘。
双方各有25枚棋子,包括
军衔代号 | 棋子名称 | 各方枚数 | 特殊能力 |
---|---|---|---|
1 | 司令 | 1 | 己方司令被消灭时,军棋需翻出 |
2 | 军长 | 无 | |
3 | 师长 | 2 | |
4 | 旅长 | ||
5 | 团长 | ||
6 | 营长 | ||
7 | 连长 | 3 | |
8 | 排长 | ||
9 | 工兵 | 在铁路上格数不限并可转弯,但不能跨过敌方或己方的棋,攻击胜过地雷 | |
M | 地雷 | 不能移动,会被工兵消灭,与炸弹同归于尽,胜过其他棋子 | |
B | 炸弹 | 2 | 遇到所有敌棋皆同归于尽,不包括军旗 |
F | 军旗 | 1 | 须置于己方其中一个大本营内,放置后不能移动,小于其他所有棋,被攻击(即拥有者)即输掉游戏 |
游戏开始前,双方在自己的棋盘上按照规则排兵布阵,并把棋子竖起来 ( 注意,如图所示,对战时双方看不到对方棋子的军衔 )
战斗开始后,双方轮流移动棋子。当一方将一个棋子移动到对方棋子上时,发生「战斗」。由裁判查看双方的棋子,根据以下规则决定战斗结果:
- 司令 > 军长 > 师长 > 旅长 > 团长 > 营长 > 连长 > 排长 > 工兵
- 相同棋子相遇,同归于尽
- 炸弹与任何敌方棋子相遇都会同归于尽,包括地雷、敌方炸弹
- 工兵 > 地雷
- 地雷:只会被工兵消灭,遇到炸弹同归于尽,胜过其他任何敌方棋子
听到这里,小方小块小鸟马上得出结论,根据战斗结果去推测对方的棋子到底是什么,是取得胜利的关键。小Y说,哇,你们想得好快啊 ,确实就是这样的。比如对方的一个棋子连续的战胜了我们的「团长」、「连长」、「军长」,肯定就是「司令」了,我就会想办法用「炸弹」去炸掉它...听到这里,小方就说,也不一定...
但这时,小块和小鸟已经迫不及待的想要来一盘,打断了他,说,来来来来,我们赶紧玩一局试试,实践出真知。
经过一番排兵布阵,战斗打响啦!局面非常焦灼,小方有一枚棋子连续战胜了小块和小鸟的枚棋子,这枚棋子的军衔分别是, , ..., 。作为小块小鸟联盟的情报分析师,需要根据这些信息,推测出小方这枚棋子可能的军衔,把所有的可能按照军衔列表从高到低的顺序输出。
输入输出格式
输入
第一行为一个整数,表示小方的棋子一共战胜了我们几个棋子。 ( )
随后行为一个字符,每个代表一枚我们被战胜的棋子的军衔。 ( 字符仅包含军衔列表中出现的军衔代号)
输出
若干行,每行一个小方的棋子可能的军衔,按照军衔列表的顺序从高到底输出。
样例
3
7
5
2
1
M
样列1说明
小方的这个棋子战胜了我们的1个「连长」、1个「团长」、1个「军长」,要么是「司令」、要么是「地雷」