7-7 茶杯
将N个杯子排成一排,其中将球藏在第X个杯子中。交换任意两个不同杯子的位置。如果移动藏有球的杯子,球会随杯子一起移动。当交换执行K次后,问球在哪个杯子中。
下载.jpg
输入格式:
第一行中,给出了N 、X 和K ,并用空格分隔。含义如题意
随后在第二行~第K+1行,每行给出两个正整数,代表每次移动的杯子的位置
3≤N≤200000
1≤X≤N
1≤K≤100000
输出格式:
输出球在哪个杯子中
输入样例:
3 2 4
1 3
3 2
3 1
2 3
输出样例:
1
样例解释:在第二次交换中,球转到第三个位置,
在第三次交换中,球转到第一个位置。
#include<stdio.h>
#include<math.h>
int main()
{
int n, x, k, i, a, b,t;
scanf("%d %d %d", &n, &x, &k);
for (i = 1; i <= k; i++)
{
scanf("%d %d", &a, &b);
if (a == x)
x = b;
else if (b == x)
x = a;
else
t = a;
a = b;
b = t;
}
printf("%d", x);
return 0;
}