Kira potrzebuje twojej pomocy!
Format wejściowy:
Date [and/or Time]
Name
Gender
Reason
Format wyjściowy:
<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>.
Szczegóły, szczegóły:
Twój program powinien uwzględniać co najmniej następujące formaty wprowadzania daty:
9 November 2003
9/11/2003
November 9, 2003
Formaty czasu:
hh tt
hh TT
hh:mm tt
hh:mm TT
hh:mm:ss tt
hh:mm:ss TT
HH
HH:mm
HH:mm:ss
Następujące formaty wprowadzania nazw:
first // Stephen
last // Harper
first last // Stephen Harper
last, first // Harper, Stephen
Przypadki testowe:
Wejście:
2 September 1973
J.R.R. Tolkien
Male
pneumonia
Wynik:
Tolkien, JRR zmarł 2 września 1973 r.
Zmarł na zapalenie płuc.
ZASTRZEŻENIE: Jeśli faktycznie umrze w tym dniu, to wina Kiry , a nie moja.
AKTUALIZACJA: Stephen Harper nie umarł w podanym dniu
Wejście:
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
Wynik:
Harper, Stephen umrze 21 grudnia 2012 o 23:59:59.
Harfiarzu, Stephen umrze na atak serca bez powodu.
Premia:
July 21, 1969 02:56:15 GMT
Armstrong, Neil
Male
poisoned moon cheese
--
January 19, 2038 03:14:08 GMT
Everyone
Unknown
Y2K38
Dodaj <st/nd/rd/th>
na końcu DD
do wprowadzania.
Odpowiedzi:
JavaScript (561)
Można to prawdopodobnie znacznie zmniejszyć, ale oto:
Przykładowe I / O:
Wypróbuj to na JsFiddle .
źródło
i="9 November 2003 03:14:08 GMT\nDouglas Adams\nMale\nI forgot";
daje mi to8th of November
.VB.NET,
727695Okej, trochę grałem w golfa. Wymaga
Option Strict Off
.Akceptuje daty we wszystkich przypadkach testowych i wiele innych formatów dzięki
Date.Parse
. Akceptuje także wiele płci (jak widać). Jeśli Kira zdecyduje się podać tylko imię lub nazwisko osoby, program się zawiesi.źródło
MonthName(d.Month)
wywołaniemCSharp - 463 znaków
źródło
PHP,
509474462461 znakówDodawałem nowe wiersze po każdym,
;
ale ich nie policzyłem, ponieważ nie muszą tam być.To, czy kod będzie obsługiwany, wykracza poza 19 stycznia 2038 03:14:07, zależy od tego, czy działa na komputerze 64-bitowym.
źródło
VBA,
384366 bajtówGrał w golfa
Pełna
sub
procedura, która pobiera dane wejściowe oczekiwanego typuVariant\String
i wysyła powiązany komunikat z uwagą do okna VBEUwaga: VBA nie jest w stanie obsłużyć stref czasowych bez zadeklarowania funkcji Windows API, więc ponieważ nie są one potrzebne do pytania, zostały wykluczone
Bonus Verison,
394376 bajtówNieznacznie zmodyfikowana wersja powyższego, która obsługuje wszystkie przypadki bonusowe z wyjątkiem stref czasowych (Korekta dotycząca obsługi mononimów)
Stosowanie
sekwencja wejściowa i wyjściowa przykładowych problemów widzianych w bezpośrednim oknie VBE
źródło