Wyzwanie
Każdego z 12 dni Bożego Narodzenia wypisz odpowiedni werset „12 dni Bożego Narodzenia”, zgodnie z datą, w przeciwnym razie wydaj refren „I Wish It Could Be Christmas Everyday”.
\n
Dozwolone są wiodące i / lub końcowe znaki nowej linii ( ) oraz końcowe znaki spacji. Nie możesz czytać z żadnych zewnętrznych źródeł.
Zasadniczo musisz przeczytać datę systemową i wypisać odpowiedni werset z „12 dni Bożego Narodzenia”.
12 dni świąt Bożego Narodzenia
Dwanaście dni Bożego Narodzenia to świąteczny sezon chrześcijański, rozpoczynający się w Boże Narodzenie (25 grudnia) i kończący się 5 stycznia.
Przykłady
Jeśli data przypada na 25 grudnia (wydrukuj najkrótszy / pierwszy wiersz):
On the first day of Christmas
my true love sent to me:
a Partridge in a Pear Tree
Jeśli data jest 31 grudnia (wydrukuj siódmy werset):
On the seventh day of Christmas
my true love sent to me:
7 Swans a Swimming
6 Geese a Laying
5 Golden Rings
4 Calling Birds
3 French Hens
2 Turtle Doves
and a Partridge in a Pear Tree
Jeśli data jest 5 stycznia (wydrukuj najdłuższy / ostatni / 12 wers):
On the twelth day of Christmas
my true love sent to me:
12 Drummers Drumming
11 Pipers Piping
10 Lords a Leaping
9 Ladies Dancing
8 Maids a Milking
7 Swans a Swimming
6 Geese a Laying
5 Golden Rings
4 Calling Birds
3 French Hens
2 Turtle Doves
and a Partridge in a Pear Tree
Jeśli data nie mieści się w zakresie od 25 grudnia do 5 stycznia włącznie:
Well I wish it could be Christmas every day
When the kids start singing and the band begins to play
Oh I wish it could be Christmas every day
So let the bells ring out for Christmas
Wesołych Świąt!
źródło
Odpowiedzi:
CJam,
557550530528522519 bajtówSprawdź to tutaj. Aby wypróbować różne daty, zamień na
et3<(;
coś podobnego[12 25]
.Prawdopodobnie jest jeszcze miejsce na ulepszenia.
źródło
5 Golden R(ing)
nie do przyjęcia? Cholera! czy jest jakiś sposób na zastosowanie zarówno-ing
zakończenia, jak i-s
zakończenia do liczby 5?Python 2,
681676673670667 bajtówPróbowałem konkurować z CJam ... i nie udało mi się, jak oczekiwano. Może gdybym mógł wymyślić, jak to zrobić, ale nie wiem ...
(Dzięki @FryAmTheEggman za sugestie za pośrednictwem czatu)
źródło
To jest duże! To znaczy! Jest brzydki! Jego...
Java:
894 887 883882 bajtówGra w golfa:
Nie golfowany:
Po tym, jak dużo z tym zadzierałem i zyskałem 14 bajtów, myślę, że przestanę się nim bawić.
I tak, wiem, że w latach przestępnych mój pomysł może mieć pewien problem, ale ... to był mój sposób na odcięcie kodu od kilku bajtów. No cóż.
źródło
<!-- language: lang-java -->
przed blokiem kodu. Użyj<!-- language-all: lang-java -->
dla wszystkich bloków kodu w dokumencie. Aby uzyskać więcej informacji, zobacz codegolf.stackexchange.com/editing-helpErlang, 748 bajtów
7-bitowa czysta wersja bez gzip-9 ma 748 bajtów:
Rozwiązanie gzip-9 + base64 ma 750 bajtów:
Zakodowana w UTF-8 funkcja Erlang ma 421 znaków (935 bajtów).
źródło
JavaScript (665)
Możesz to przetestować, dodając nawiasy do pierwszej,
new Date
tj. Zmień:do
Tutaj jest upiększony:
źródło
C # w Linqpad - 866 bajtów
Cóż, przynajmniej pokonał Javę;) Lata przestępne są obsługiwane w kodzie.
Nieformowane:
Sformatowany:
źródło
int y=w.Year%4
. Jeśli moduloy
wynosi 0, dodaję jedenc
za pomocąp
.