Tantangan
Diberi waktu dan zona waktu sebagai input, output waktu di zona waktu itu.
Waktu
Waktu akan diberikan dalam format 24 jam seperti:
hh:mm
Di mana jam adalah jam dua digit dan mm adalah menit dua digit. Perhatikan bahwa jam dan menit akan selalu diisi dengan nol seperti:
06:09
Semua waktu yang diberikan berada di UTC + 00: 00.
Jam dalam output Anda tidak harus diisi dengan nol tetapi waktu Anda harus dalam format 24 jam
Zona waktu
Zona waktu akan diberikan dalam format berikut:
UTC±hh:mm
Di mana ± akan menjadi + atau a - dan hh, adalah dua digit jam dan mm adalah dua digit menit (sekali lagi, ini akan diisi dengan nol).
Untuk menemukan waktu di zona waktu itu, Anda dapat menambahkan (jika simbolnya +) atau mengurangi (jika simbolnya adalah -) waktu setelah UTC ± dari waktu yang dimasukkan.
Misalnya, jika inputnya adalah 24:56
dan UTC-02:50
, Anda akan mengurangi 2 jam dan 50 menit dari 24:56:
24:56
02:50 -
-----
22:06
Outputnya adalah 22:06
.
Contohnya
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
Perhatikan bahwa ini sudah ke hari sebelumnya.
Tokyo
Input: 17:25 and UTC+09:00
Output: 02:25
Perhatikan bahwa ini telah pergi ke hari berikutnya.
Aturan
Anda tidak boleh menggunakan fungsi tanggal atau pustaka bawaan apa pun.
Asumsikan semua input akan menjadi waktu dan offset waktu yang valid.
Zona waktu akan berada dalam kisaran UTC-24:00
hingga UTC+24:00
inklusif.
Dalam kasus setengah lewat tengah malam , representasi yang benar seharusnya 00:30
, bukan 24:30
.
Kemenangan
Kode terpendek dalam byte menang.
26:02
dan 08:74
tidak akan muncul? Sama untuk offset UTC?
2:25
)
1:5
valid, bukan 1:05
? Saya pikir hanya jam tidak boleh empuk. Juga contoh Anda dengan yang 24:56
seharusnya tidak 00:56
karena Anda telah menyatakan rentang hingga 24:00
dan mengungkapkan hal serupa dalam skenario tengah malam setengah Anda?