Ministério da Educação
Brasil um país de todos
Personal tools
You are here: Home Members Rodrigo Soares Laboratório de programação Exercícios Juvenal não quer lavar louça
Navigation
Log in


Forgot your password?
 
Document Actions

Juvenal não quer lavar louça

by Rodrigo Soares last modified 2015-10-06 06:54

Juvenal é conhecido pelas ótimas festas que organiza em sua casa de praia em Pitangui. Elas são sempre muito badaladas. Mas ele não é bobo e sempre diz que existe uma condição. Ele aceita fornecer a casa, a comida e a piscina, contanto que algum dos convidados fique para lavar a louça.
Como  todos querem as festas mas ninguém quer ficar pra limpar a bagunça, eles sempre decidem isso em um jogo de sorte.
O jogo é assim:
Cada convidado começa com um monte de cartas na mão, e existe outro monte na mesa.
A cada rodada, uma carta do monte da mesa é descoberta e cada convidado faz o mesmo com o seu próprio monte.
Caso a carta que um convidado tire seja de mesmo numero que a carta presente na mesa, o convidado descarta ela de sua mão (ela não será mais usada!).
Caso a carta seja de numero diferente, ela volta para o final da pilha de cartas do convidado.
A carta da mesa sempre volta pro final do monte da mesa.(Podendo, inclusive, ser reutilizada!).
O convidado sortudo será o primeiro que ficar sem cartas na mão(Torça pra não ser você!).
Caso o jogo não termine em 1000 rodadas, Juvenal será o ganhador.

Formato de Entrada

A entrada inicia com um inteiro F, que indica quantas festas Juvenal realizou.
A próxima linha indica a configuração inicial do deck na mesa, na ordem em que as cartas deverão aparecer (primeira carta é a primeira que sai). As cartas tem valores entre 0 e 10^5.
As próximas linhas representam os decks de cada convidado. Cada convidado é representado por um inteiro C, começando de 1 e contando...
O fim de cada caso é representado pelo numero -1.
Restrições: 0 < F <= 10^5

Formato de Saída

Para cada caso, imprima C o número identificador da pessoa que ganhou (Juvenal tem o número 0)
Obs: caso haja empate, opte sempre pelo convidado de menor identificador
O baralho é velho, formado pela junção de vários decks incompletos. É possível encontrar cartas repetidas.
Para todos os convidados terem chance de vencer, é garantido que o deck da mesa tem qualquer carta que possa aparecer na mão de um convidado.

Exemplos

Entrada:


2
1 7 3 2 4
2 3 1
1 7 4
1 2 1 3
-1
1 2 3 4
2 1
4 3
-1

Saída:


2
0
//cursor aqui


Powered by Plone CMS, the Open Source Content Management System

This site conforms to the following standards: