1467 - Zerinho ou Um

Um dos primeiros problemas que eu resolvi em uma Maratona de Programação da SBC.

Descrição

Solução

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;
}

Last updated