Zgłaszanie | Wszystkie zgłoszenia | Najlepsze | Lista |
TREEDYN - Częściowe drzewo binarne |
Tym razem zrobimy symulacje poruszania się po drzewie binarnym. Oto symulacja:
- Na początku jesteś w korzeniu drzewa (na szczycie drzewa binarnego). Jest to najwyższe miejsce w drzewie.
- 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.
- Zliczasz każde odwiedzenia danego węzła i wypisujesz je na wyjściu.
- 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łowego | 50000B |
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 |