Die Herausforderung ist einfach, wenn eine Eingabezeit als Zeichenfolge in einem der folgenden Formate angegeben wird:
hh
, hh:mm
oder hh:mm:ss
mit 0 ≤ hh ≤ 23
, 0 ≤ mm ≤ 59
und 0 ≤ ss ≤ 59
.
Mit den folgenden Symbolen können Sie die aktuelle Uhrzeit ausgeben:
AA LABEL FOR CHARACTER CODE POINT HEXADECIMAL
== ==================== ========== ===========
🕐 Clock Face 01 Oclock 128336 0x1F550
🕑 Clock Face 02 Oclock 128337 0x1F551
🕒 Clock Face 03 Oclock 128338 0x1F552
🕓 Clock Face 04 Oclock 128339 0x1F553
🕔 Clock Face 05 Oclock 128340 0x1F554
🕕 Clock Face 06 Oclock 128341 0x1F555
🕖 Clock Face 07 Oclock 128342 0x1F556
🕗 Clock Face 08 Oclock 128343 0x1F557
🕘 Clock Face 09 Oclock 128344 0x1F558
🕙 Clock Face 10 Oclock 128345 0x1F559
🕚 Clock Face 11 Oclock 128346 0x1F55A
🕛 Clock Face 12 Oclock 128347 0x1F55B
Im folgenden Format:
It is currently {Clock Face 1} with {mm} minutes and {ss} seconds until {Clock Face 2}.
Beispiele (einschließlich aller Randfälle):
Fall mit nur Stunden ...
f("12") = "It is currently 🕛."
Fall mit Stunden und Minuten ...
f("12:30") = "It is currently 🕛 with 30 minutes until 🕐."
Fall mit nur Stunden, hat aber Minuten als 00 enthalten ...
f("12:00") = "It is currently 🕛."
Fall mit Stunden, Minuten und Sekunden ...
f("12:30:30") = "It is currently 🕛 with 29 minutes and 30 seconds until 🕐."
Fall mit Stunden und Minuten, hat aber Sekunden als 00 enthalten ...
f("12:30:00") = "It is currently 🕛 with 30 minutes until 🕐."
Fall mit Stunden und Minuten, mit weniger als einer Minute bis zur nächsten Stunde ...
f("12:59:59") = "It is currently 🕛 with 1 seconds until 🕐."
Sie müssen nicht vom Plural zum Singular wechseln.
Fall mit Stunden und Minuten, mit 1 Minute bis zur nächsten Stunde ...
f("12:59") = "It is currently 🕛 with 1 minutes until 🕐."
Sie müssen nicht vom Plural zum Singular wechseln.
Fall mit militärischer Zeit (ja, Sie müssen damit umgehen) ...
f("23:30:30") = "It is currently 🕚 with 29 minutes and 30 seconds until 🕛."
Ungültige Fälle ...
f("PPCG") = This cannot occur, you are guaranteed a valid format by the definition of the problem.
f(66:66:66) = This cannot occur, you are guaranteed valid numbers by the definition of the problem.
f(24:60:60) = This cannot occur, you are guaranteed valid numbers by the definition of the problem.
Für ungültige Fälle müssen Sie sich nicht an einen Ausgabestil halten. Fehler sind in Ordnung.
Insgesamt ist die Herausforderung eher simpel, schien aber meiner Meinung nach dynamisch genug zu sein, um Spaß zu machen. Der kürzeste Code ist hier der Gewinner, da der Code außer der Länge nur wenig variable Aspekte aufweist.
0 < hh < 24
, 0 < mm < 60
und 0 < ss < 60
bedeutete ihr 0 ≤ hh ≤ 23
, 0 ≤ mm ≤ 59
und 0 ≤ ss ≤ 59
.
AM
oder PM
Tags verarbeiten?