Criando um sistema operativo

Linus Torvalds, o criador do sistema operativo Linux, decidiu confiar-lhe a manutenção do código-base do sistema. Contudo, como gosta de experimentar, decidiu reescrever alguns dos comandos mais populares e colocá-los em produção.
notion image
Esta semana, está a reescrever os comandos pwd (print working directory) e cd (change directory). A sua intenção é que os comandos funcionem de acordo com a entrada do utilizador:
  1. Se o utilizador escrever pwd - o programa deve imprimir o diretório de trabalho atual.
  1. Se o utilizador escrever cd folder - o programa deve mudar para essa pasta:
      • If the folder is .. - it means that the program should move to the parent directory. So, if we’re at directory /usr/local/bin/, the program should move to /usr/local/.
      • If the folder is . - it means that the program should stay in the current directory.
      • If the folder starts with /, it means that the program should change the absolute path of the directory - not the relative. So, if we’re at directory /usr/local/bin/, and the input was cd /dev, the program should move to /dev/.
      • If the folder is a name (Latin letters or numbers) - the program should move to that directory relative to the current one. So, if we’re at directory /usr/local/bin/, and the input was cd ../lib, the program should move to /usr/local/lib/.
- Se a pasta for .., significa que o programa deve mudar para o diretório-pai. Portanto, se estivermos no diretório /usr/local/bin/, o programa deve passar para /usr/local/.

Entrada

A primeira linha da entrada contém um único inteiro n (1 ≤ n ≤ 100), que representa o número de comandos.
As próximas n linhas contêm os comandos. É garantido que cada comando não excede 200 caracteres.

Saída

O programa deve imprimir o resultado de todos os comandos pwd, cada um em sua própria linha.

Exemplos

Entrada
Saída
5 pwd cd usr/local/bin cd .. pwd cd /dev
/ /usr/local/
7 pwd cd /home/anna pwd cd .. pwd cd anna/../bob pwd
/ /home/anna/ /home/ /home/bob/
4 cd /usr/local pwd cd ../usr/local pwd
/usr/local/ /usr/usr/local/
 

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

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