#P9855. [CCC 2008 J2] Do the Shuffle
[CCC 2008 J2] Do the Shuffle
题目描述
Those tiny music machines that play your digital music are really computers that keep track of and play music files. The CCC music player is currently in development and will be hitting the stores soon! In this problem, you have to simulate a .
The music player will hold songs in memory, whose titles will always be A
, B
, C
, D
, E
. The also keeps track of a playlist, which is an ordering of all the songs. The has 4 buttons that the user will press to rearrange the playlist and play the songs.
Initially, the playist is A,B,C,D,E
. The control buttons do the following:
-
button : move the first song of the playlist to the end of the playlist. For example:
A,B,C,D,E
will change toB,C,D,E,A
. -
button : move the last song of the playlist to the start of the playlist. For example,
A,B,C,D,E
will change toE,A,B,C,D
. -
button : swap the first two songs of the playlist. For example,
A,B,C,D,E
will change toB,A,C,D,E
. -
button : stop rearranging songs and output the playlist.
输入格式
You need to write a program to simulate a CCC music player. Your program should repeatedly ask for two positive integers b and n. Here b represents the button number that the user wants to press, , and n represents the number of times that the user wants to press button b. You can assume that n always satisfies .
输出格式
The input will always finish with the pair of inputs when this happens, you should print the order of songs in the current playlist and your program should end. You can assume that the user will only ever press button once.
题目大意
你有一个含有五个字符的字符数组,该字符数组初始值为 ,每次操作数据输入都是两个数 和 ,你需要根据 的值进行操作:
-
的情况:将前面第一个字符移到末尾去,执行 次。
-
的情况:将末尾字符移到首位去,执行 次。
-
的情况:交换前 个字符的位置,执行 次。
-
的情况:输出当前的字符数组(每个字符用空格隔开),并终止程序。
2
1
3
1
2
3
4
1
B C D A E