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 vai ao banco brigar!
Navigation
Log in


Forgot your password?
 
Document Actions

Juvenal vai ao banco brigar!

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

Revoltado com o embaraço do banco com o problema de seu saldo, Juvenal foi ao banco para pedir satisfações. Mas, como o banco é um banco, ele teve que pegar uma fila para falar com alguém, e só havia caixas trabalhando naquele dia. Nessa agência, existiam dois caixas funcionando, um preferencial e um normal. Também existem duas filas, uma regular e outra preferencial.
Quando o caixa A está disponível, a próxima pessoa da fila regular é chamada.
Quando o caixa B está disponível, a primeira pessoa da fila preferencial é chamada.
Se uma das filas estiver vazia, os caixas atendem pessoas de qualquer uma das filas.

Formato de Entrada

A entrada começa com um inteiro T, que indica o número de casos de teste.
Cada caso começa com um inteiro N que indica quantos comandos terá o caso.
Cada pessoa que chega na fila contém um número de identificação.
As próximas N linhas contém os comandos:
"f x" = chegou uma pessoa com identificação x na fila regular.
"p x" = chegou uma pessoa com identificação x na fila preferencial.
"A" = o caixa A chama a próxima pessoa.
"B" = o caixa B chama a próxima pessoa.
"I" = imprima, em uma linha, as pessoas que estão na frente das filas f e p, nessa ordem. Se nenhuma pessoa estiver na fila, imprima 0.

Para cada caso de teste, as filas começam vazias.
Podem existir pessoas diferentes com identificações iguais.

1 <= T <= 1000
1 <= N <= 10000
1 <= x <= 100

Formato de Saída

Para cada caso de teste, imprima "Caso y:"
para cada vez que aparecer o comando "I", imprima em uma linha as primeiras pessoas das filas f e p, nessa ordem.
Obs: O cursor deve estar na última linha (em branco).

Exemplos

Entrada:

3
6
f 3
I
p 5
p 7
A
I
15
f 5
f 7
f 2
A
B
I
p 10
f 4
B
A
I
p 11
p 13
B
I
1
I

Saída:

Caso 1:
3 0
0 5
Caso 2:
2 0
4 0
4 13
Caso 3:
0 0
//cursor aqui


Powered by Plone CMS, the Open Source Content Management System

This site conforms to the following standards: