Problem hidden
|This problem was hidden by Editorial Board member probably because it has incorrect language|version or invalid test data, or description of the problem is not clear.|

TREEDYN - Częściowe drzewo binarne

Tym razem zrobimy symulacje poruszania się po drzewie binarnym. Oto symulacja:

  1. Na początku jesteś w korzeniu drzewa (na szczycie drzewa binarnego). Jest to najwyższe miejsce w drzewie.
  2. Jeśli otrzymasz komendę left - powinieneś iść do lewego syna, jeśli otrzymasz komendę right - powinieneś iść do prawego syna, jeśli otrzymasz komendę up - powinieneś przejść do ojca.
  3. Zliczasz każde odwiedzenia danego węzła i wypisujesz je na wyjściu.
  4. Jeśli jest komenda up i jesteś w korzeniu, nie idziesz wyżej, ale zliczasz jako kolejne odwiedzenie korzenia.

Wejście

W pierwszym wierszu jedna liczba n określająca ilość komend (nie więcej niż milion).

W kolejnych n wierszach komendy. Komendy zawierają się w zbiorze: {left, right, up}

Wyjście

Dla danej komendy wypisz który raz odwiedzasz dany węzeł drzewa. Na starcie jesteś w korzeniu i tam odznaczasz już jako jedno odwiedzenie.

Przykład

Wejście:
10
left
left
up
right
up
left
right
left
right
right

Wyjście:
1 1 2 1 3 2 1 1 1 1 

Dodane przez:Marcin Kasprowicz
Data dodania:2020-10-01
Limit czasu wykonania programu:1s-5s
Limit długości kodu źródłowego50000B
Limit pamięci:1536MB
Cluster: Cube (Intel G860)
Języki programowania:All except: ASM32-GCC MAWK BC C-CLANG NCSHARP CPP14-CLANG COBOL COFFEE D-CLANG D-DMD ELIXIR FANTOM FORTH GOSU GRV JS-MONKEY JULIA KTLN NIM OBJC OBJC-CLANG OCT PICO PROLOG R RACKET RUST SCM qobi CHICKEN SQLITE SWIFT UNLAMBDA VB.NET

© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.