Submit | All submissions | Best solutions | Back to list |
POUPT03 - Os nós de uma AVL |
A representação de uma árvore AVL contém campos chave, fb, esq, dir e pai, qtde_nos_esq e qtde_nos_dir para cada nó.
Esses dois últimos campos contém a soma do número de nós das suas subárvores a esquerda e à direita respectivamente.
Crie um programa que monta essa árvore AVL e exibe seu percurso em ordem de acordo com o modelo de saída a seguir.
Entrada:
A primeira linha da entrada contém um inteiro N (1 ≤ N ≤ 100), correspondente ao número de casos de teste a seguir.
Cada caso de teste consiste de uma sequencia de chaves, números inteiros positivos (0 a 64000), na ordem em devem ser inseridas na árvores. A sequencia finaliza com a leitura de -1 (que não faz parte da árvore)
Saida:
Para cada caso de teste, a saída apresenta uma linha com nós da árvore criada, seguindo o percuso em ordem, mostrando para cada nó: a quantidade de nós a esquerda entre colchetes, a chave, a quantidade de nós a direita entre parênteses.
Exemplo de entrada:
2
23 45 65 28 33 64 7 34 9 87 90 25 -1
28 33 64 7 34 9 87 90 14 54 38 10 3 25 40 13 76 75 72 -1
Exemplo de saída:
[0]7(0) [1]9(2) [0]23(1) [0]25(0) [4]28(2) [0]33(1) [0]34(0) [7]45(4) [0]64(0) [1]65(2) [0]87(1) [0]90(0)
[0]3(0) [1]7(0) [2]9(5) [0]10(1) [0]13(0) [2]14(2) [0]25(0) [1]28(0) [8]33(10) [0]34(0) [1]38(2) [0]40(0) [1]54(0) [4]64(5) [0]72(0) [1]75(1) [0]76(0) [3]87(1) [0]90(0)
Added by: | IFTM_Maratona |
Date: | 2022-09-14 |
Time limit: | 1s |
Source limit: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Languages: | C |