To jest mój pierwszy kod golfowy, więc daj mi znać, jeśli jest zbyt szeroki lub jeśli brakuje mi informacji na temat dobrej układanki!
Wyzwanie
W Ontario i prawdopodobnie w innych częściach świata za energię elektryczną naliczane są ceny według czasu użytkowania (TOU) , który zmienia koszt za kilowatogodzinę w zależności od tego, kiedy używasz energii.
Biorąc pod uwagę datę i godzinę, chcę wiedzieć, czy jestem w szczycie (czerwony), w środku szczytu (żółty), czy poza szczytem (zielony).
Wejście
Załóżmy, że dane wejściowe są dostarczane w akceptowalnym formacie daty i godziny ISO 8601 bez strefy czasowej z minimalną dokładnością godzin: YYYY-MM-DDThh[:mm[:ss]]
(T jest dosłowne).
Przykłady
- 2014-09-01T14
- 2014-09-01T17: 30
- 2014-09-01T17: 30: 02
Wynik
Wyjście powinno być ciągiem On
, Mid
albo Off
.
Zasady
- Najkrótszy kod wygrywa
- Na potrzeby tego wyzwania należy zignorować dni ustawowo wolne od pracy
- Załóżmy, że informacje zawarte w tym poście. Rzeczywiste zasady ustalania cen za czas użytkowania mogą ulec zmianie w przyszłości przez Ministerstwo Energii Ontario.
Informacja
Letnie dni powszednie (od 1 maja do 31 października)
- Poza szczytem: 19.00 - 07.00
- Środkowy szczyt: 07.00 - 11.00 i 17.00 - 19.00
- Na szczycie: 11.00 - 17.00
Zimowe dni powszednie (od 1 listopada do 30 kwietnia)
- Poza szczytem: 19.00 - 07.00
- Środkowy szczyt: 11.00 - 17.00
- Na szczycie: 07.00 - 11.00 i 17.00 - 19.00
Weekendy
- Poza szczytem: Cały dzień
YYYY-MM-DDThh[:mm[:ss]]
że sekundy można zastosować tylko wtedy, gdy stosuje się minuty?