小程序链子游戏的玩法如下:
游戏描述
游戏中有一条链子,链子上连接着编号为1到n的钻石。
可以对链子执行两种操作:区间切割(CUT)和区间反转(FLIP)。
操作说明
CUT a b c:切下从第a颗钻石到第b颗钻石的链子,并将切下的链子插入到剩余链子的第c颗钻石后面。例如,如果n=8,链子是1, 2, 3, 4, 5, 6, 7, 8,执行CUT 3 5 4后,链子变为1, 2, 6, 7, 3, 4, 5, 8。
FLIP a b:切下从第a颗钻石到第b颗钻石的链子,并将链子倒过来放回原来的位置。例如,在链子1, 2, 6, 7, 3, 4, 5, 8上执行FLIP 2 6后,链子变为1, 4, 3, 7, 6, 2, 5, 8。
输入格式
输入包括多个测试用例,每个测试用例的第一行包含两个数字n和m,分别表示链子的钻石总数和操作次数。
接下来的m行,每行输入一个操作,操作格式为CUT a b c或FLIP a b,其中1≤a≤b≤n,0≤c≤n-(b-a +1)。
输出格式
输出每个测试用例操作后的链子状态,链子上的钻石按顺序排列。
示例
输入:
```
8 2
CUT 3 5 4
FLIP 2 6
```
输出:
```
1 4 3 7 6 2 5 8
```
建议
在执行操作时,需要确保输入的a、b、c值符合要求,避免出现越界或无效操作。
可以通过模拟操作来验证每一步的结果,确保链子的状态正确无误。