问题描述
给定N个整数组成的序列,每次交换当前第x个与第y个整数,要求输出最终的序列。
输入格式
第一行为序列的大小N(1<=N<=1000)和操作个数M(1<=M<=1000)。
第二行包含N个数字,表示初始序列。
接下来M行,每行两个整数x,y (1<=x,y<=N),表示要交换的两个整数。在一次交换中,如果x和y相等,则不会改变序列的内容。
第二行包含N个数字,表示初始序列。
接下来M行,每行两个整数x,y (1<=x,y<=N),表示要交换的两个整数。在一次交换中,如果x和y相等,则不会改变序列的内容。
输出格式
输出N行,为交换后的序列中的数。
样例输入
5 2
1 2 3 4 5
1 2
3 4
1 2 3 4 5
1 2
3 4
样例输出
2
1
4
3
5
1
4
3
5
import java.util.Scanner;
public class Main{
public static Scanner input = new Scanner(System.in);
public static int n = input.nextInt();
public static int m = input.nextInt();
public static int [] arr = new int[n];
public static void main(String[] args) {
for (int i=0; i<arr.length; i++){
arr[i] = input.nextInt();
}
for (int i=0; i<m; i++){
swap(input.nextInt(),input.nextInt());
}
print();
}
public static void swap(int x,int y){
int temp = arr[x-1];
arr[x-1] = arr[y-1];
arr[y-1] = temp;
}
public static void print(){
for(int i=0; i<arr.length; i++){
System.out.println(arr[i]);
}
}
}