Início Inscrições Informações Gerais Regulamento Pratique Contato Mapa do Conteúdo

 Você está visitando: Início > Olimpíada Brasileira de Informática > Pratique > Modalidade Programação >
                                            > Nível 2

Pirâmide

Joana quer ser artista plástica, mas enquanto estuda procura trabalhos temporários durante suas férias escolares. Joana conseguiu emprego como auxiliar de almoxarifado em uma grande transportadora. A transportadora recebeu um enorme carregamento de caixas de mesma altura mas com largura e profundidades diferentes. As caixas podem ser empilhadas indefinidamente mas não podem ser deitadas em outra posição (todas têm que ser armazenadas obedecendo à indicação "Este lado para cima"). Joana é a responsável por armazenar o carregamento de caixas, e, seguindo seu senso artístico, quer construir com as caixas a pilha mais alta possível na forma de uma "pirâmide", ou seja, uma pilha construída de tal forma que uma caixa A é empilhada sobre uma outra caixa B somente se as dimensões de A (largura e a profundidade) não são maiores do que as dimensões de B (as caixas podem ser viradas de forma a trocar a profundidade com a largura). Você pode ajudá-la?

Tarefa

É dado um conjuto de caixas de mesma altura mas com largura e profundidades diferentes. Sua tarefa é escrever um programa que determine qual a pilha de caixas mais alta que Joana pode construir com as restrições acima.

Entrada

A entrada é composta de vários conjuntos de teste. A primeira linha de um conjunto de testes contém um número inteiro N que indica a quantidade de caixas do conjunto. As N linhas seguintes contêm, cada uma, a descrição de uma caixa. Uma caixa é descrita por dois inteiros X e Y (1 ≤ X ≤ 15000 e 1 ≤ Y ≤ 15000) que representam os valores de cada lado da peça. O final da entrada é indicado por N = 0.

Exemplo de Entrada

3
100 100
1000 2000
2000 500
6
3 4
5 7
7 5
1 5
4 4
10 2
0

Saída

Para cada conjunto de teste da entrada seu programa deve produzir três linhas na saída. A primeira linha deve conter um identificador do conjunto de teste, no formato "Teste n", onde n é numerado a partir de 1. A segunda linha deve conter o número máximo de caixas que podem ser empilhadas na forma de uma pirâmide, conforme determinado pelo seu programa. A terceira linha deve ser deixada em branco. A grafia mostrada no Exemplo de Saída, abaixo, deve ser seguida rigorosamente.

Exemplo de Saída

Teste 1
3

Teste 2 
4

(esta saída corresponde ao exemplo de entrada acima)

Restrições

0 ≤ N ≤ 5000 (N = 0 apenas para indicar o final da entrada)
1 ≤ X ≤ 15000
1 ≤ Y ≤ 15000

Apoio: Unicamp Patrocínio: Fundação Carlos Chagas Promoção: SBC