茶杯和球
题号:NC245652
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

n 个杯子排成一排,其中将球藏在第 x 个杯子中。随后,执行 k 次操作,每一次操作给出两个正整数 a 和 b,代表将第 a 个杯子的位置与第 b 个杯子的位置进行交换(如果移动藏有球的杯子,球会随杯子一起移动)。

当全部交换执行完成后,问球在哪个杯子中。

输入描述:

第一行输入三个正整数 n,x,k \left(3 \leqq n \leqq 2 \times 10^5;\ 1 \leqq x \leqq n;\ 1 \leqq k \leqq 10^5 \right) 代表杯子数量、球放在的杯子编号、操作次数。
随后 k 行,每行输入两个正整数 a,b \left( 1 \leqq a, b \leqq n;\ a \neq b \right) 代表第 a 个杯子的位置与第 b 个杯子的位置进行了一次交换。

输出描述:

输出一个整数,代表最终球所在的杯子编号。
示例1

输入

复制
3 2 4
1 3
3 2
3 1
2 3

输出

复制
1

说明

三个杯子,球在第二个杯子中,四次操作,在第二次交换中,球转到第三个位置,在第三次交换中,球转到第一个位置。
示例2

输入

复制
3 1 2
1 2
2 3

输出

复制
3

说明

三个杯子,球在第一个杯子中,两次操作,在第一次交换中,球转到第二个位置,在第二次交换中,球转到第三个位置。