Existem várias formas de resolver esse problema, incluindo fazer todos os ifs prováveis para decidir cada vitória. No caso dos códigos abaixo, segui uma abordagem de primeira contar a soma de todos os números. Se a soma der 1, significa que só uma pessoa colocou 1. Se a soma der 2, significa que só uma pessoa colocou 0. Logo, primeiro fazemos a soma e depois perguntamos quem foi a pessoa que colocou 1 ou 0.
#include <stdio.h>
int main(){
int A, B, C;
while(scanf("%d %d %d", &A, &B, &C) != EOF){
if(A + B + C == 1){
if(A == 1) printf("A\n");
if(B == 1) printf("B\n");
if(C == 1) printf("C\n");
}else if(A + B + C == 2){
if(A == 0) printf("A\n");
if(B == 0) printf("B\n");
if(C == 0) printf("C\n");
}else printf("*\n");
}
return 0;
}
#include <iostream>
using namespace std;
int main(){
int A, B, C;
while(cin >> A >> B >> C){
if(A + B + C == 1){
if(A == 1) cout << 'A' << endl;
if(B == 1) cout << 'B' << endl;
if(C == 1) cout << 'C' << endl;
}else if(A + B + C == 2){
if(A == 0) cout << 'A' << endl;
if(B == 0) cout << 'B' << endl;
if(C == 0) cout << 'C' << endl;
}else{
cout << '*' << endl;
}
}
return 0;
}
var input = require('fs').readFileSync('/dev/stdin', 'utf8');
var lines = input.split('\n');
while(lines.length){
let [A, B, C] = lines.shift().trim().split(" ").map((x) => parseInt(x));
if (A + B + C === 1) {
if (A === 1) console.log("A");
if (B === 1) console.log("B");
if (C === 1) console.log("C");
} else if (A + B + C == 2) {
if (A === 0) console.log("A");
if (B === 0) console.log("B");
if (C === 0) console.log("C");
} else console.log("*");
}
while True:
try:
A, B, C = [int(x) for x in input().strip().split(' ')]
if(A + B + C == 1):
if(A == 1):
print('A')
if(B == 1):
print('B')
if(C == 1):
print('C')
elif(A + B + C == 2):
if(A == 0):
print('A')
if(B == 0):
print('B')
if(C == 0):
print('C')
else:
print('*')
except EOFError:
break