Dada uma árvore binária, a tua tarefa é descobrir a sua altura. Recorda que a altura de uma árvore é o tamanho da maior caminho da árvore desde a raíz até uma folha (onde o tamanho do caminho é o número de arestas percorridas). A seguinte imagem ilustra quatro árvores e a sua respetiva altura.
Na primeira linha do input vem um inteiro T indicando o número de casos de teste, ou seja, o número de árvores a considerar a considerar.
Cada árvore é indicada por duas linhas:
É garantido que as árvores são binárias (existem no máximo dois filhos em cada nó). Note também que a maneira como é dado o input não lhe garante conseguir distinguir qual é o filho esquerdo e o filho direito, mas para este problema essa distinção não é realmente necessária, pois não?
O output deve conter T linhas. A i-ésima linha deve conter um único inteiro A indicando a altura da árvore correspondente.
São garantidos os seguintes limites em todos os casos de teste que irão ser colocados ao programa:
1 ≤ T ≤ 20 | Casos de teste | |
1 ≤ N ≤ 100 | Número de nós de uma árvore |
4 5 1 2 2 1 1 2 1 5 5 5 3 1
2 0 1 3
O exemplo de input corresponde às 4 árvores da figura do enunciado (ex: a 2ª e 3ª linha detalham a árvore da esquerda de profundidade 2).
Algoritmos e Estruturas de Dados (L.EIC011)
DCC/FCUP - Faculdade de Ciências da Universidade do Porto
DEI/FEUP - Faculdade de Engenharia da Universidade do Porto