A Árvore de Caminhos

O Ruben perdeu acidentalmente todas as informações do disco rígido do seu computador de trabalho, incluindo a estrutura de diretórios que ele tinha construído ao longo dos anos. Embora não se importe com os ficheiros em si, ele valoriza a organização dos diretórios e quer restaurá-la. Felizmente, ele tem várias listagens guardadas que mostram os caminhos completos de alguns diretórios.
A tua tarefa é ajudar o Bill a reconstruir esta estrutura de diretórios, apresentando uma árvore de diretórios formatada de forma clara.

Entrada

A primeira linha contém um número inteiro n, que representa o total de caminhos de diretórios distintos (1 ≤ n ≤ 500).
As n linhas seguintes contêm os caminhos de diretórios, um por linha. Cada caminho não tem espaços no início ou no fim e está limitado a um máximo de 80 caracteres. Os nomes de diretório em cada caminho são separados por uma barra invertida (/).
Cada nome de diretório consiste em 1 a 8 caracteres em maiúsculas, números ou caracteres especiais: ponto de exclamação, cardinal, cifrão, sinal de percentagem, e comercial, apóstrofo, parênteses, hífen, arroba, acento circunflexo, sublinhado, acento grave, chavetas e til (!#$%&'()-@^_{}~).

Saída

  • Cada nome de diretório deve ser listado na sua própria linha, precedido por um número de espaços que indica a profundidade na hierarquia de diretórios.
  • Subdiretórios devem aparecer imediatamente após os respetivos diretórios-pai, com mais um espaço de indentação.
  • Os diretórios de nível superior não devem ter nenhum espaço antes dos seus nomes.
  • Todos os diretórios devem ser listados por ordem lexicográfica.

Exemplos

Entrada
Saída
7 WINNT/SYSTEM32/CONFIG GAMES WINNT/DRIVERS HOME WIN/SOFT GAMES/DRIVERS WINNT/SYSTEM32/CERTSRV/CERTCO~1/X8O~1\X86
GAMES DRIVERS HOME WIN SOFT WINNT DRIVERS SYSTEM32 CERTSRV CERTCO~1 X86 CONFIG
 

Constraints

Time limit: 5 seconds

Memory limit: 512 MB

Output limit: 10 MB

To check your solution you need to sign in
Sign in to continue