Pesquisar este blog

Livros Recomendados

Mostrando postagens com marcador 1397. Mostrar todas as postagens
Mostrando postagens com marcador 1397. Mostrar todas as postagens

quinta-feira, 11 de fevereiro de 2021

URI (BEECROWD) - 1397 - Jogo do Maior - Ad-Hoc - C e C++

"Jogo do Maior" é o problema ad-hoc que resolvi e trago aqui nesse post a resposta. É um bom exercício para quem está começando na programação! Confere no fim desse post a resposta!

Plataforma: URI (BEECROWD)

Problema1397

Enunciado:

Og gosta muito de brincar com seus filhos. Seu jogo preferido é o jogo do maior, de autoria própria. Este passatempo (no tempo das cavernas se tinha muito tempo disponível para jogos) é jogado em dupla, Og e um dos seus filhos. O jogo procede da seguinte forma: os dois participantes escolhem um número de rodadas e, a cada rodada, cada participante diz um número de 0 até 10 em voz alta, sendo que o participante que falar o número mais alto ganha um ponto (em caso de empate, ninguém ganha o ponto). No final das rodadas, os pontos são contabilizados e o participante com o maior número de pontos ganha.

Og e seus filhos gostam muito do jogo, mas se perdem na contagem dos pontos. Você conseguirá ajudar Og a verificar a pontuação de uma lista de jogos?


Linguagens: C e C++


Solução:

Basta criar dois contadores, pontosA e pontosB, para as pontuações de "a" e "b", respectivamente. Quando b for maior, incrementa pontosB, quando a for maior, incrementa pontosA. No final basta imprimir estes contadores, sem esquecer da quebra de linha!

Código em C:

#include <stdio.h>

int main() {
    int n, a, b, pontosA, pontosB;
    
    while (1) {
        
        scanf("%i", &n);
        
        if (n == 0)
            break;
        
        pontosA = 0;
        pontosB = 0;
        
        while (n--) {
            scanf("%i %i", &a, &b);
            
            if (a > b)
                pontosA++;
                
            else if (b > a)
                pontosB++;
        }
        printf("%i %i\n", pontosA, pontosB);
    }
    
    return 0;
}

Código em C++:

#include <iostream>

using namespace std;

int main() {
    int n, a, b, pontosA, pontosB;
    
    while (1) {
        
        cin >> n;
        
        if (n == 0)
            break;
        
        pontosA = 0;
        pontosB = 0;
        
        while (n--) {
            cin >> a >> b;
            
            if (a > b)
                pontosA++;
                
            else if (b > a)
                pontosB++;
        }
        cout << pontosA << " " << pontosB << endl;
    }
    
    return 0;
}

Postagem em destaque

URI (BEECROWD) - 2158 - Helping Uncle Cláudio (Ajudando o Tio Cláudio) - Matemática - C, C++ e Haskell

Buenas! Estou aqui mais uma vez para resolver um problema de Matemática! Agora tenho resolvido alguns dessa categoria, pra que vocês possam ...

Postagens mais visitadas