Wyzwanie
Biorąc pod uwagę czas i strefę czasową jako dane wejściowe, wyświetlaj czas w tej strefie czasowej.
Czas
Czas zostanie podany w formacie 24-godzinnym tak:
hh:mm
Gdzie hh to dwucyfrowa godzina, a mm to dwucyfrowa minuta. Zauważ, że godzina i minuta zawsze będą wypełnione zerami w następujący sposób:
06:09
Wszystkie podane godziny są w UTC + 00: 00.
Godziny na wyjściu nie muszą być uzupełnione zerami, ale twój czas musi być w formacie 24-godzinnym
Strefa czasowa
Strefa czasowa zostanie podana w następującym formacie:
UTC±hh:mm
Gdzie ± będzie albo +, albo - i hh, jest dwucyfrową godziną, a mm jest dwucyfrową minutą (ponownie, będą one uzupełnione zerami).
Aby znaleźć czas w tej strefie czasowej, możesz dodać (jeśli symbolem jest +) lub odjąć (jeśli symbolem jest -) czas po UTC ± od wprowadzonego czasu.
Na przykład, jeśli dane wejściowe były 24:56
i UTC-02:50
, odejmowałbyś 2 godziny i 50 minut od 24:56:
24:56
02:50 -
-----
22:06
Wynik byłby 22:06
.
Przykłady
Chicago
Input: 08:50 and UTC-06:00
Output: 02:50
Kathmandu
Input: 09:42 and UTC+05:45
Output: 15:27
Samoa
Input: 06:42 and UTC+13:00
Output: 19:42
Hawaje
Input: 02:40 and UTC-10:00
Output: 16:40
Pamiętaj, że poszło to do poprzedniego dnia.
Tokio
Input: 17:25 and UTC+09:00
Output: 02:25
Pamiętaj, że poszło to następnego dnia.
Zasady
Nie wolno używać żadnych wbudowanych funkcji daty ani bibliotek.
Załóż, że wszystkie dane wejściowe będą prawidłowe i przesunięcia czasowe.
Strefa czasowa będzie w zakresie UTC-24:00
od UTC+24:00
włącznie.
W przypadku wpół do północy , prawidłowa reprezentacja powinna być 00:30
, nie 24:30
.
Zwycięski
Najkrótszy kod w bajtach wygrywa.
26:02
I 08:74
nie pojawiłby się? To samo dotyczy przesunięć UTC?
2:25
1:5
byłby prawidłowy zamiast 1:05
? Sądzę, że nie należy podchodzić tylko godzin. Twój przykład 24:56
nie powinien tak być, 00:56
ponieważ określiłeś zakres do 24:00
i wyrażasz podobny w swoim scenariuszu o północy po północy?