Sfida
Dato un tempo e un fuso orario come input, emette il tempo in quel fuso orario.
Tempo
L'ora verrà indicata nel formato 24 ore in questo modo:
hh:mm
Dove hh è l'ora di due cifre e mm è il minuto di due cifre. Si noti che l'ora e il minuto saranno sempre riempiti con zeri in questo modo:
06:09
Tutti i tempi indicati sono a UTC + 00: 00.
Non è necessario riempire le ore dell'output con zero, ma l'ora deve essere nel formato 24 ore
Fuso orario
Il fuso orario verrà fornito nel seguente formato:
UTC±hh:mm
Dove ± sta per essere un + o un - e hh, è l'ora di due cifre e mm è il minuto di due cifre (di nuovo, questi saranno riempiti con zero).
Per trovare l'ora in quel fuso orario, aggiungere (se il simbolo è +) o sottrarre (se il simbolo è -) il tempo dopo l'ora UTC ± dal tempo immesso.
Ad esempio, se l'input era 24:56
e UTC-02:50
, sottrai 2 ore e 50 minuti dalle 24:56:
24:56
02:50 -
-----
22:06
L'output sarebbe 22:06
.
Esempi
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
Hawaii
Input: 02:40 and UTC-10:00
Output: 16:40
Si noti che questo è andato al giorno precedente.
Tokyo
Input: 17:25 and UTC+09:00
Output: 02:25
Si noti che questo è andato al giorno seguente.
Regole
Non è necessario utilizzare alcuna funzione o libreria di data integrata.
Supponiamo che tutti gli input siano tempi e offset validi.
Il fuso orario sarà nel range UTC-24:00
di UTC+24:00
compreso.
Nel caso di mezzanotte e mezza , la rappresentazione corretta dovrebbe essere 00:30
, no 24:30
.
vincente
Vince il codice più breve in byte.
26:02
e 08:74
non apparirei? Lo stesso per gli offset UTC?
2:25
)
1:5
valido invece di 1:05
? Penso che solo le ore non dovrebbero essere imbottite. Anche il tuo esempio con 24:56
quello non dovrebbe essere 00:56
dato che hai dichiarato un intervallo fino a 24:00
ed esprimi simile nel tuo scenario di mezzanotte e mezza?