『题解』UVa online judge UVA12646 Zero or One

题目传送门

题目大意

给定三个数 \(A,B,C\),你需要找出与另外两个数不一样的数,并输出它是哪个数(ABC)。

若三个数都相等,则输出 *

数据保证三个数中至少有两个数相等。

多组数据。

思路

先判断三个是否都相等,若相等,则输出并进入下一组数据。

否则,就两个两个判断是否相等,若相等,则输出另一个数。

具体要判断的数对分别是:ABACBC

代码

#include <iostream>
using namespace std;
int a,b,c;

int main(){
    while(cin >> a >> b >> c){ // 不断输入,直到无输入为止
        if(a==b && b==c){ // 全部相等的情况
            puts("*");
            continue;
        }
        // 这里不用注意三个都相等的情况,上面已经特判了
        if(a==b) puts("C"); // a 和 b 相等,那么 c 就一定不一样
        if(a==c) puts("B"); // a 和 c 相等,那么 b 就一定不一样
        if(b==c) puts("A"); // b 和 c 相等,那么 a 就一定不一样
    }
    return 0;
}
posted @ 2022-04-12 17:41  仙山有茗  阅读(103)  评论(0)    收藏  举报