Kira braucht deine Hilfe!
Eingabeformat:
Date [and/or Time]
Name
Gender
Reason
Ausgabeformat:
<Last Name, First Name> <will die/died> on the <DD><st/nd/rd/th> of <MMM, YYYY> [at <hh:mm:ss TT>].
<He/She> <will die/died> of <Reason>.
Details, Details:
Ihr Programm sollte mindestens die folgenden Datumseingabeformate berücksichtigen:
9 November 2003
9/11/2003
November 9, 2003
Zeitformate:
hh tt
hh TT
hh:mm tt
hh:mm TT
hh:mm:ss tt
hh:mm:ss TT
HH
HH:mm
HH:mm:ss
Die folgenden Namenseingabeformate:
first // Stephen
last // Harper
first last // Stephen Harper
last, first // Harper, Stephen
Testfälle:
Eingang:
2 September 1973
J.R.R. Tolkien
Male
pneumonia
Ausgabe:
Tolkien, JRR starb am 2. September 1973.
Er starb an einer Lungenentzündung.
HAFTUNGSAUSSCHLUSS: Wenn er an diesem Tag tatsächlich stirbt, ist es Kiras Schuld, nicht meine.
UPDATE: Stephen Harper ist zum angegebenen Datum nicht gestorben
Eingang:
21/12/12 23:59:59 // DD/MM/YY HH:mm:ss
Harper, Stephen // Last, First
Unknown // Gender
a heart attack for no reason // Reason
Ausgabe:
Harper, Stephen wird am 21. Dezember 2012 um 23:59:59 Uhr sterben.
Harper, Stephen wird ohne Grund an einem Herzinfarkt sterben.
Bonus:
July 21, 1969 02:56:15 GMT
Armstrong, Neil
Male
poisoned moon cheese
--
January 19, 2038 03:14:08 GMT
Everyone
Unknown
Y2K38
Fügen Sie <st/nd/rd/th>
am Ende des DD
für die Eingabe.
Antworten:
Javascript (561)
Dies kann wahrscheinlich erheblich reduziert werden, aber hier geht:
Beispiel-E / A:
Probieren Sie es auf JsFiddle aus .
quelle
i="9 November 2003 03:14:08 GMT\nDouglas Adams\nMale\nI forgot";
Ich möchte nur darauf hinweisen, das gibt mir die8th of November
.VB.NET,
727695Okay, ein bisschen Golf gespielt. Benötigt
Option Strict Off
.Es akzeptiert die Daten in allen Testfällen und viele andere Formate dank
Date.Parse
. Es akzeptiert auch viele Geschlechter (wie Sie sehen können). Wenn Kira beschließt, nur den Vor- oder Nachnamen der Person anzugeben, stürzt das Programm ab.quelle
MonthName(d.Month)
Aufruf ersetzenCSharp - 463 Zeichen
quelle
PHP,
509474462461 ZeichenIch habe nach jedem Zeilenwechsel neue Zeilen hinzugefügt, diese
;
jedoch nicht gezählt, da sie nicht vorhanden sein müssen.Ob der Code Daten nach dem 19. Januar 2038, 03:14:07 Uhr verarbeitet, hängt davon ab, ob er auf einem 64-Bit-Computer ausgeführt wird.
quelle
VBA,
384366 BytesGolf gespielt
Vollständige
sub
Routine, die Eingaben des erwarteten Typs entgegennimmtVariant\String
und die zugehörige Deathnote-Nachricht an das VBE-Direktfenster ausgibtHinweis: VBA ist nicht in der Lage, Zeitzonen zu verarbeiten, ohne Windows-API-Funktionen zu deklarieren. Da diese für die Frage nicht erforderlich sind, wurden sie ausgeschlossen
Bonus Verison,
394376 BytesLeicht modifizierte Version des oben genannten, die alle Bonusfälle mit Ausnahme der Zeitzonen behandelt (Korrektur für den Umgang mit Mononymen)
Verwendung
Eingabe- und Ausgabereihenfolge der Beispielprobleme aus dem VBE-Direktfenster
quelle