Obecnie w mojej pracy przeprowadziliśmy się do nowego budynku. Ma być najnowocześniejszy i ma automatyczne światła, automatyczne rolety, a teraz jest znany jako najbardziej ekologiczny budynek w tym mieście.
Jednak tak naprawdę to nie działa tak dobrze. Rolety opuszczają się czasami w pochmurne dni i wznoszą się, gdy słońce zaczyna świecić, a światła czasami wywołują efekt dyskoteki, naprzemiennie włączając i wyłączając co 5-10 minuty. Ponadto, nie mamy żadnego ręcznego sposobu kontrolowania tych rolet, ani temperatury, ALE mamy pilota do świateł.
Te piloty były jednak dostarczane bez instrukcji obsługi i zawierają niewiele ponad 20 przycisków do robienia różnych rzeczy oprócz tego, czego się wydaje.
PS: Wyzwanie napisałem 1,5 miesiąca temu w piaskownicy. Obecnie wiemy, jak działają piloty.
Jedną wielką zaletą tego budynku jest to, że na zewnątrz jest ponad 30 stopni Celsjusza, ale w środku przez cały czas pozostaje taka sama temperatura pokojowa.
To było wprowadzenie, a pilot do świateł zainspirował to wyzwanie.
Wyzwanie:
Powiedzmy, że początkowo mamy wyłączoną lampę:
L
Następnie wciskamy wszelkiego rodzaju przyciski i następnie wyprowadzamy stan lampy.
Używamy następujących liczb do różnych funkcji pilota do lampy. Kiedy przed tym numerem znajduje się symbol minus, robimy odwrotnie.
1= ON;-1= WYŁ.2= Zwiększ siłę o 25%;-2= Zmniejsz (przyciemnij) wytrzymałość o 25%.3= Zwiększ spread o 50%;-3= Zmniejsz spread o 50%.4= Przełączanie rodzaju światła.
Wszystko to jest dość niejasne, więc przejdźmy bardziej szczegółowo, co oznacza każda rzecz:
Tak więc -1(WYŁ.) Jest dość oczywiste i 1przejdzie do początkowego stanu WŁĄCZENIA (50% dla 2i 50% dla 3):
//
//
L ====
\\
\\
2i -2określa, jak daleko podróżuje światło ( ==jest dodawane co 25%):
0% (equal to a light bulb that is OFF)
L
25%
L ==
50%
L ====
75%
L ======
100%
L ========
3i -3jak daleko rozprzestrzenia się światło:
0%:
L ====
50%:
//
//
L ====
\\
\\
100%:
|| //
||//
L ====
||\\
|| \\
(UWAGA: Kiedy 2i 3to zarówno na poziomie 100%, trzeba ten stan:
|| //
|| //
|| //
||//
L ========
||\\
|| \\
|| \\
|| \\
4 jest przełączanie rodzaju światła.
Default:
//
L ==
\\
After toggling (note the single space before '/' instead of two):
/
L --
\
Wejście:
Otrzymasz dane wejściowe zawierające możliwe naciśnięcia przycisków. Na przykład:
12-34
Wynik:
Stan lampy świetlnej po naciśnięciu wszystkich przycisków wejścia jest podsekwencyjny. Tak więc z powyższym przykładem przykładowym otrzymujemy następujące dane wyjściowe:
L ------
Zasady konkursu:
- Dane wejściowe zawierają tylko
1234-(i nigdy-wcześniej4). - Nigdy nie możesz zejść poniżej 0% lub powyżej 100%. Jeśli liczba wzrośnie / spadnie poza te granice, możesz ją zignorować.
- Gdy lampa jest wyłączona, możesz zignorować wszelkie działania, a po ponownym włączeniu resetuje się z powrotem do początkowego stanu WŁĄCZENIA (50% dla obu
2i3, i domyślnie4). Na przykład:12-1-341wydrukuje tylko wspomniany powyżej początkowy stan włączenia. (WSKAZÓWKA: Możesz zignorować wszystko przed końcem1danych wejściowych - z wyłączeniem-1.) - Końcowe spacje równe długości światła lub pojedynczej nowej linii nie są hamowane. Dodanie dodatkowych niepotrzebnych nowych wierszy nie jest jednak możliwe.
- Możesz wziąć dane wejściowe jako listę liczb całkowitych zamiast pojedynczego ciągu. Zamiast tego
12-34możesz mieć[1,2,-3,4]jako dane wejściowe.
Główne zasady:
- To jest golf golfowy , więc wygrywa najkrótsza odpowiedź w bajtach.
Nie pozwól, aby języki kod-golfowe zniechęcały Cię do publikowania odpowiedzi w językach niekodujących golfa. Spróbuj znaleźć możliwie najkrótszą odpowiedź na „dowolny” język programowania. - Do odpowiedzi odnoszą się standardowe reguły , więc możesz używać STDIN / STDOUT, funkcji / metody z odpowiednimi parametrami, pełnych programów. Twoja decyzja.
- Domyślne luki są zabronione.
- Jeśli to możliwe, dodaj link z testem swojego kodu.
- W razie potrzeby dodaj również wyjaśnienie.
Przypadki testowe:
12-34
L ------
12-1-341
//
//
L ====
\\
\\
14-3224333-2
|| //
|| //
||//
L ======
||\\
|| \\
|| \\
142-1-314-3-322
L --------
1324-2-3
/
/
L ----
\
\
134
| /
|/
L ----
|\
| \
1-2-2-214-3-3-3
L ----
4). Dzięki, że pytasz.
1naciśnięta, czy parametry są resetowane?
134?