#B1248. 纸杯交换

纸杯交换

【题目描述】

桌面上倒扣着 nn 个纸杯,从左到右编号为 11 到 nn,其中第 ii 个纸杯内侧写着 aia_i。

接下来进行 mm 次操作,每次选择两个位置 u,vu,v,交换这两个位置上的纸杯;当 u=vu=v 时,本次操作不改变排列。请输出所有操作结束后,从左到右每个纸杯内侧的数字。


【输入描述】

第一行输入两个整数 n,mn,m。

第二行输入 nn 个整数 aia_i,表示一开始每个纸杯内侧的数字。

接下来 mm 行,每行输入两个整数 u,vu,v,表示一次交换操作。

保证:

  • 1≤n,m≤10001\le n,m\le 1000;
  • −109≤ai≤109-10^9\le a_i\le 10^9;
  • 1≤u,v≤n1\le u,v\le n。

【输出描述】

输出一行 nn 个整数,表示最终从左到右每个纸杯内侧的数字,相邻两个整数之间用一个空格分隔。


【样例 1】

【样例 1 输入】

5 3
10 20 30 40 50
1 5
2 4
5 5

【样例 1 输出】

50 40 30 20 10

【样例 1 解释】

前两次交换后排列变为 50 40 30 20 10,第三次交换同一个位置,不改变结果。


【样例 2】

【样例 2 输入】

4 2
1 2 3 4
1 2
2 3

【样例 2 输出】

2 3 1 4