Zgłaszanie | Wszystkie zgłoszenia | Najlepsze | Lista |
FR_AA_03 - Plusy i minusy II |
Uczniowie w trakcie semestru otrzymują za aktywność na lekcji plusy, a za brak pracy domowej minusy. Plusy i minusy zapisywane są w kolejności chronologicznej i na koniec semestru nauczyciel, w oparciu o swój nowy system, zamienia ciąg plusów i minusów na oceny. System wymiany plusów i minusów oparty jest na stosie o wysokości 3. Stos na początku jest pusty. Do pustego stosu może trafić plus albo minus. Taki sam znak zwiększa stos o jeden, a znak przeciwny zmniejsza stos o jeden. Gdy na stosie uzbierają się trzy plusy, nauczyciel zamienia je na ocenę bardzo dobry (5), a gdy trzy minusy, to uczeń otrzymuje ocenę niedostateczny (1). Po wymianie plusów lub minusów na ocenę, stos jest pusty. Znając ciąg plusów i minusów zapisanych w porządku chronologicznym, napisz program, który wystawi uczniowi oceny.
Wejście
W pierwszym i jedynym wierszu wejścia znajduje się ciąg składający się ze znaków + lub -. Długość ciągu nie przekracza 100 znaków.
Wyjście
Na wyjściu należy wypisać oceny (rozdzielone znakiem spacji) jakie uczeń otrzyma po wymianie plusów i minusów. Jeśli uczeń nie otrzyma żadnej oceny, należy wypisać słowo BRAK.
Przykład 1
Dla danych wejściowych:
+++---+++-
poprawną odpowiedzią jest:
5 1 5
Przykład 2
Dla danych wejściowych:
++-++-++--
poprawną odpowiedzią jest:
5
Przykład 3
Dla danych wejściowych:
++--+-+--++
poprawną odpowiedzią jest:
BRAK
Dodane przez: | Mariusz Śliwiński |
Data dodania: | 2021-04-14 |
Limit czasu wykonania programu: | 1s |
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 |