为什么wa???????
  • 板块学术版
  • 楼主LiXinHaoJun
  • 当前回复1
  • 已保存回复1
  • 发布时间2023/7/30 19:15
  • 上次更新2023/11/3 06:52:19
查看原帖
为什么wa???????
1003631
LiXinHaoJun楼主2023/7/30 19:15

题目描述

居民们聚集在主广场上观看令人叹为观止的表演。表演者将3个不透明杯子倒置成一排。然后,他公开地把一个小球放在其中一个杯子下面,并开始快速地洗牌,所以总的来说,他只洗了3次。之后,观众只需尝试一次就可以猜出他们认为球在哪个杯子里,如果答案正确,他们就会获得奖品。也许你也可以试着找到球?

给定小球初始所在的纸杯位置和 3 次交换纸杯的操作,问最后小球的位置。

输入格式

第一行一个整数。标识小球的初始位置,之后 3 行每行两个整数 a,b(a!=b) 表示交换 a,b 纸杯。(要注意的是:最左边的杯子编号永远为 1,最右边的编号永远为 3,不会随着交换而改变)

输出格式

一个整数,表示最后小球所在的纸杯编号。

输入数据 1

1
1 2
2 1
2 1

Copy

输出数据 1

2

Copy

输入数据 2

1
2 1
3 1
1 3

Copy

输出数据 2

2

Copy

提示

本题目中所有数字均不超过 3。

#include <bits/stdc++.h>
using namespace std;
struct xq{
    int n;
    int flag;
}a[4];
int b[4][3];
int main(){
    for(int i=1;i<4;i++) a[i].n=i;
	int f;
    cin>>f;
    a[f].flag=6;
    for(int i=1;i<4;i++){
        for(int j=1;j<3;j++) cin>>b[i][j];
    }
    for(int i=1;i<4;i++) swap(a[b[i][1]],a[b[i][2]]);
    for(int i=1;i<4;i++){
        if (a[i].flag==6) cout<<a[i].n;
    }
    return 0;
}

??????

2023/7/30 19:15
加载中...