UVA 12657

来源:互联网 发布:西安广电网络营业厅 编辑:程序博客网 时间:2024/06/07 12:09

题意:

有一行盒子,从左到右编号为1~n,可执行4类命令。


命令有4类:

1).  1 X Y:将编号为X的盒子 放置在 编号为Y的盒子的 左边    

2).  2 X Y:将编号为X的盒子 放置在编号为Y的盒子的 右边

3).  3 X Y:将编号为X的盒子 和 编号为Y的盒子 进行交换位置

4).  4       :将所有的盒子的编号进行反置(反转)

数据范围: 1<=  n,m  <= 10,0000


输入:

【最多输入10组数据,每组数据: 第一行包含2个数据:n,m (n代表n个盒子,m代表要执行m个指令),接着 输入m行,每行包含一种命令】

输出:

【每组测试数据输出 奇数位置的编号之和 .  ( 位置是 从1~n,从左到右 )  】


思路:

此题用数组实现肯定会超时,所以采用链表的思想进行位置更换,单链表实现命令4 很麻烦, 而采用双向链表来实现就非常之方便。




原创粉丝点击