Questão da Maratona de Programação da SBC de 2014, sub-regional Brasil (primeira fase), questão H. Link para o caderno de prova.
Frustrado e desanimado com os resultados de sua equipe de futebol, o Super Brasileiro Clube resolveu investir na equipe de handebol. Para melhor avaliar os atletas, os técnicos identificaram que seria útil analisar a regularidade dos jogadores. Especificamente, eles estão interessados em saber quantos jogadores fizeram gols em todas as partidas.
Como o volume de dados e muito grande, eles gostariam de ter um programa de computador para realizar essa contagem.
Entrada
A primeira linha da entrada contém dois inteiros N e M (1 <= N <= 100 e 1 <= M <= 100), indicando respectivamente o número de jogadores e o número de partidas. Cada uma das N linhas seguintes descreve o desempenho de um jogador: a i-ésima linha contém M inteiros Xj (0 <= Xj <= 100, para 1 <= j <= M), informando o número de gols do i-ésimo jogador em cada partida.
Saída
Seu programa deve produzir uma única linha, contendo um único inteiro, o número de jogadores que fizeram gols em todas as partidas.
Exemplo
Entrada | Saída |
5 3
0 0 0 1 0 5 0 0 0 0 1 2 1 1 0 |
0
|
12 5
4 4 2 3 7 0 0 0 1 0 7 4 7 0 6 1 2 3 3 2 0 0 0 0 0 4 0 9 10 10 0 1 0 0 0 1 2 0 2 3 10 10 10 1 0 0 3 3 3 4 10 10 0 10 10 1 1 2 0 9 |
2
|
Solução em C++
#include <iostream> using namespace std; int main() { int jogadores, partidas, i, j, naoMarcou=0, cont; cin >> jogadores; //leitura da quantidade de jogadores cin >> partidas; //leitura da quantidade de partidas int gols[jogadores][partidas]; //para cada jogador, determina quantos gols por partida ele fez for(i=0; i<jogadores; i++) { for(j=0; j<partidas; j++) { cin >> gols[i][j]; } } //determina quem fez gols em todas as partidas for(i=0; i<jogadores; i++) { cont = 0; for(j=0; j<partidas; j++) { if (gols[i][j] == 0) { cont++; } } if (cont == 0) { naoMarcou++; } } cout << naoMarcou; return 0; }
Veja a execução online: http://ideone.com/e.js/spk8Fi
Solução em Python
cont = 0 jogadores = int(input()) #leitura da quantidade de jogadores partidas = int(input()) #leitura da quantidade de partidas gols = [0]*jogadores for i in range(jogadores): gols[i] = [0] * partidas #para cada jogador, determina quantos gols por partida ele fez for i in range(jogadores): for j in range(partidas): gols[i][j] = int(input()) #determina quem fez gols em todas as partidas for i in range(jogadores): naoFezGol = False for j in range(partidas): if gols[i][j] == 0: naoFezGol = True if naoFezGol == False: cont = cont + 1 print cont
Veja a execução online: http://www.codeskulptor.org/#user41_lIxX3O3nQB_0.py