Problem Description
欢迎参加浙江工业大学第四届程序设计竞赛!
但是,请稍等!裁判Joe说了,必须正确回答他的问题,才可以看到PIPI的气球MM,KUKU的气球GG.
Joe手上有7张卡片,每张卡片上有一个大写字母,分别是Z,J,U,T,A,C,M.现在他开始表演魔术,每次只交换其中的两张卡片.等表演结束后,请你指出含有字母J的那张卡片.
Input
第一行正整数N(1<=N<=1000)表示其后有N组测试数据.
每组测试数据的第一行整数M(0<=M<=1000)表示M次交换操作;第二行有M对整数<x,y>表示交换自上而下,从1开始编号的第x和第y张卡片.开始的时候,自上而下7张卡片为ZJUTACM,即J卡片的位置是2.
Output
对于每组测试数据,输出J卡片的位置.
Sample Input
2
2
1 6 5 3
1
1 2
Sample Output
2
1
看似很难,无从下手,其实很简单。普通方法就可过。直接上代码了。
#include <stdio.h>
int main()
{
int n,i,t1,t2;
scanf("%d",&n);
while(n--)
{
int sum=2; //直接让sum=2代表卡片2的位置。
int m;
scanf("%d",&m);
for(i=1;i<=m;i++)
{
scanf("%d%d",&t1,&t2);
if(t2==sum) // 相等的话就交换
sum=t1;
else if(t1==sum)
sum=t2; // 同上
}
printf("%d\n",sum); //换完后就得到最后的位置。
}
}
很简单的模拟,
原文:http://blog.csdn.net/sky_miange/article/details/42008533