首页 > 代码库 > 很简单的模拟,

很简单的模拟,

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);  //换完后就得到最后的位置。
    }
}


 

很简单的模拟,