问题描述 |
---|
某班不定期会进行列与列的座位交换,为了统一管理,方案总是一成不变的,这里给出一种换座位的方案: 原先第$$1$$列的同学换到第$$2$$列; 原先第$$2$$列的同学换到第$$3$$列, ... ... 原先第$$n-1$$列的同学换到第$$n$$列; 原先第$$n$$列的同学换到第$$1$$列。 我们假设最开始的列次用$$1,2,...,n$$描述,那么在本次换完座位后就变成了$$n,1,2...,n-1$$(此时新的第$$1$$列就变成了原来的第$$n$$列)。
而这种换座位的方案我们也可以用一个数组$$a=[2,3,...,n,1]$$表示,其中第$$i$$个数字$$a_i$$表示第$$i$$列的同学下一次的位置是$$a_i$$。 如果在此方案的基础上继续进行下一轮座位交换,那么就会变成$$n-1,n,1,2...,n-2$$。
再举一个具体的例子,假设$$a=[3,5,4,2,1]$$,那么表示: 原先第$$1$$列的同学需要换到第$$3$$列; 原先第$$2$$列的同学需要换到第$$5$$列; 原先第$$3$$列的同学需要换到第$$4$$列; 原先第$$4$$列的同学需要换到第$$2$$列; 原先第$$5$$列的同学需要换到第$$1$$列。 那么在本次换完座位后就变成了$$5,4,1,3,2$$。 如果在此方案的基础上继续进行下一轮座位交换,那么就会变成$$2,3,5,1,4$$。 现在给定一个换座位的方案,请你输出$$m$$次换座位后的结果。 |
输入描述 |
第一行是一个正整数$$n$$表示列数。($$1 \leq n \leq 1000$$) 接下来$$n$$个数字表示给定的换座位方案,即$$a_1,a_2,...a_n$$,保证给出的序列是一个$$1-n$$的排列。 然后是一个正整数$$T$$表示询问的次数。($$1 \leq T \leq 1000$$) 每次询问给出一个正整数$$m$$表示要询问在第$$m$$次换座位后的结果。($$1 \leq m \leq 2000$$) |
输出描述 |
针对每次询问,输出$$n$$个数字,表示$$m$$次换座位后的结果,每两个数字之间用空格隔开,最后一个数字后面没有空格。 |
样例输入复制样例 |
5 3 5 4 2 1 2 1 2 |
样例输出 |
5 4 1 3 2 2 3 5 1 4 |
提示说明 |
样例即为描述中给出的例子。 |
相关 |