Lista exercícios 10

Transcrição

Lista exercícios 10
Curso de Engenharia de Controle e Automação
Disciplina: Informática para a Automação
Professor: Marcelo Cendron
Desafios
3 Tetris
A sua turma do colégio resolveu organizar um campeonato de tetris. Após discussão
sobre as regras, ficou definido que cada aluno jogaria um total de 12 partidas. Das 12
pontuações obtidas por um aluno, a maior e a menor são descartadas, e as demais são
somadas, resultando na pontuação final do aluno.
3.1 Tarefa
Como você possui conhecimentos de programação, acabou sendo designado pela turma
para escrever um programa para imprimir a classificação final do campeonato, a partir das
pontuações de cada jogador.
3.2 Entrada
A entrada é composta de vários conjuntos de teste. A primeira linha de um conjunto de
testes contém um número inteiro J, que indica o número de jogadores que participaram do
campeonato. A seguir, para cada jogador há duas linhas na entrada: a primeira possui o nome
do jogador (formado apenas por letras, sendo apenas a inicial em maiúscula, e com no máximo
15 letras), e a segunda possui as 12 pontuações que o jogador obteve, separadas por espaço.
As pontuações são inteiros entre 0 e 1000. O final da entrada é indicado por um conjunto de
teste com J = 0.
Exemplo 1 de Entrada
4
Zezinho
100 123 133 333 400 300 129 200 360 340 200 600
Luizinho
60 50 120 250 170 190 190 220 260 270 290 300
Carlinhos
10 10 20 10 10 10 10 20 20 20 20 20
Joaozinho
200 300 400 400 500 500 500 600 650 650 700 810
Exemplo 2 de Entrada
3
Pedrinho
100 100 200 200 300 300 400 400 500 500 600 600
Huguinho
50 100 200 200 300 300 500 500 400 400 600 700
Zezinho
100 100 100 100 100 100 100 100 100 100 100 100
3.3 Saída
O seu programa deve escrever a classificação final no campeonato, utilizando uma linha
para cada participante. Cada linha deve conter três informações, separadas por um espaço em
branco: a classificação do jogador, a sua pontuação final, e o seu nome. A classificação de um
jogador é igual a 1 mais o número de jogadores que obtiveram pontuação maior do que a sua.
Saída do exemplo 1:
1
2
3
4
5200 Joaozinho
2518 Zezinho
2020 Luizinho
150 Carlinhos
Saída do exemplo 2:
1 3500 Huguinho
1 3500 Pedrinho
3 1000 Zezinho
(esta saída corresponde ao exemplo de entrada acima)
3.4 Restrições
0 ≤ J ≤ 1000 (J = 0 apenas para indicar final da entrada)
0 ≤ pontuação em uma partida ≤ 1000
1 ≤ tamanho dos nomes, em número de letras ≤ 15
4 Truco
Truco é um jogo de cartas que pode ser jogado por duas ou mais pessoas. Existem
diversas variações: o Truco Cego ou Truco Espanhol (popular no sul do Brasil, Argentina,
Uruguai e outros países), o Truco Paulista, Capixaba ou Mineiro (variações populares no Brasil),
o Truco índio e o Truco Eteviano. Em geral, é uma disputa de três rodadas (“melhor de três”)
para ver quem tem as cartas mais “fortes” (de valor simbólico mais alto).
Adalberto e Bernadete estão jogando uma variação de truco com 40 cartas (foram
retirados do baralho todas as cartas de valor 8, 9 e 10, além dos coringas), e o valor simbólico
independente do naipe da carta. A ordem de valor simbólico das cartas nessa variação de
truco é mostrada abaixo, ordenada da mais “fraca” (mais `a esquerda) para a mais “forte”
(mais `a direita)
4 5 6 7 Q J K A 1 2 3
Cada partida é disputada em três rodadas. A cada rodada, os jogadores escolhem uma
das cartas para mostrar, e vence aquele que tiver a carta com o maior valor simbólico. Em caso
de empate (ou seja, os dois apresentarem cartas com os mesmos valores simbólicos),
Adalberto vence, pois é mais velho que Bernadete. Vence a partida aquele que vencer o maior
número de rodadas.
Depois de algumas partidas, Adalberto e Bernadete estão com dificuldades para saber
quem venceu mais partidas, e pediram a sua ajuda.
4.1 Tarefa
Sua tarefa é escrever um programa que calcule o número de partidas que cada um dos
competidores (Adalberto e Bernadete) venceram.
4.2 Entrada
A entrada contém um único conjunto de testes, que deve ser lido do dispositivo de
entrada padrão (normalmente o teclado). A primeira linha da saída possui um inteiro N que
indica o número de partidas disputadas entre Adalberto e Bernadete (1 ≤ N ≤ 10). As N linhas
seguintes contêm cada uma seis inteiros, A1, A2, A3, B1, B2 e B3 , que correspondem `as três
cartas apresentadas por Adalberto nas rodadas 1, 2 e 3 daquela partida (A1, A2, A3 ∈ {1, 2, 3,
4, 5, 6, 7, 11, 12, 13}), seguidas pelas três cartas apresentadas por Bernadete nas rodadas 1, 2
e 3 da mesma partida (B1, B2, B3 ∈ {1, 2, 3, 4, 5, 6, 7, 11, 12, 13}). Na entrada, o número 1
representa o As (A), 11 representa o Valete (J), 12 representa a Dama (Q) e 13 representa o Rei
(K).
4.3 Saída
Seu programa deve imprimir na saída padrão, uma única linha, que contém os números
de partidas vencidas por Adalberto e por Bernadete, nessa ordem, separados por espaços.
Entrada
1
1 2 3 1 3 2
Saída
1 0
Entrada
2
1 5 6 6 3 4
5 6 2 11 13 12
Saída
1 1
Entrada
5
1 2 11 12 7 6
3 5 1 13 1 4
4 5 7 11 12 13
1 5 6 3 5 2
5 6 7 4 5 2
Saída
3 2