思路
这个题我一看题目就想到用链表实现,很简单,但是搜了下大家都是用数组做的,具体我也没仔细看,但这个用链表真的简单。大概是CCF的这些题刷了好几遍了,多少有些作用吧。。。
结果
下面的是用链表的结果,上面的是复制别人的数组实现的结果。
代码
import java.util.ArrayList;
import java.util.Scanner;
public class CCF2017032 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
ArrayList<Integer> list = new ArrayList<Integer>();
for(int i = 0; i < n; i++) {
list.add(i+1);
}
int m = sc.nextInt();
while(m-- > 0) {
int num = sc.nextInt();
int index = sc.nextInt();
for(int j = 0;j<list.size();j++) {
if(list.get(j) == num) {
list.remove(j);
list.add(j+index, num);
break;
}
}
}
for(int number:list) {
System.out.print(number+" ");
}
}
}