2015 adalah tahun kambing! Dalam tantangan ini, Anda akan mencari tahu hewan mana yang mewakili tahun tersebut. Untuk menghindari tantangan ini menjadi rumit, Anda tidak perlu menghitung tahun baru Cina.
Karena mereka hanya 12 hewan di Zodiac, kode Anda harus sesingkat mungkin.
Contohnya
Program Anda harus mendapatkan tahun sistem , baris pertama hanya untuk referensi
2015
Goat
1924
Rat
1923
Pig
2008
Rat
Spesifikasi
Urutan zodiak adalah:
Rat, Ox, Tiger, Rabbit, Dragon, Snake, Horse, Goat, Monkey, Rooster, Dog, Pig
Rat
dimulai pada 2008, Pig
2007, Ox
2009, dll. di akhir putaran ini kembali.
Output harus dikapitalisasi dengan benar.
code-golf
kolmogorov-complexity
date
Downgoat
sumber
sumber
Rat
?Jawaban:
Pyth, 54 byte
Cobalah online: Peragaan
Anda dapat mengganti 3 karakter terakhir
.d3
dengan nomor tahun apa saja untuk menguji hewan Zodiac lainnya.Penjelasan:
sumber
Pyth - 65 byte
Cobalah online di sini .
sumber
JavaScript ES6,
106105104103 byteDisimpan 1 byte berkat Maltysen, 1 byte untuk menyisipkan nama pengguna di sini, dan 1 byte ke edc65!
Cukup jelas.
sumber
btoa
s hasil terlihat menjadi 1,5x atau lebih panjang dari string hardcoded.0
sebagai pemisah dan menggunakan regex ini untuk membagi string:/(?=[A-Z])/
. Selamat Tahun Baru. :)match(/.[a-z]+/g)
bukannya split (nilai tambah: split dengan capture bukan ES6, adalah fitur FireFox saja) (dan 1 byte lebih pendek)CJam,
828075 byteIni adalah port langsung dari jawaban Bima Sakti saya .Disimpan 7 byte berkat NinjaBearMonkey .
sumber
S
sebagai variabel untuk ruang."Monkey Rooster Dog Pig Rat Ox Tiger Rabbit Dragon Snake Horse Goat"S/et0==
Japt ,
7265 byteCobalah online!
sumber
$[$Ð i -4 %12]
, bisa Anda gunakang(Ð i -4 %C
.MATL , 85 byte
Menggunakan rilis 6.0.0 dari bahasa / kompiler. Bekerja di oktaf.
Contoh
Penjelasan
Perhatikan bahwa string awal dipindahkan secara siklis oleh 3 untuk menghindari pengurangan.
sumber
Bima Sakti 1.6.1 ,
10196 byteDisimpan 5 byte berkat pengingat oleh Luis Mendo .
Penjelasan
Kode modulos tahun sistem dengan 12 dan output hewan yang tepat.
Pemakaian
sumber
2008-
dengan mengatur ulang string seperti pada jawaban saya?CJam, 69 byte
Berisi banyak hal yang tidak patut. Coba di sini.
sumber
Python 3,
126116112 byteSunting: Saya menyimpan jawaban lain karena keren, tetapi ini lebih pendek.
Jika trailing whitespace ok, maka 126 byte. Jika tidak, ini 134 byte setelah ditambahkan
.strip()
ke akhir kode.sumber
R, 119 byte
format(Sys.Date(),"%Y")
mengembalikan tahun sebagai string karakter,(format(Sys.Date(),"%Y"):1)[1]
adalah cara terpendek yang dapat saya pikirkan untuk memaksa itu menjadi integer sehingga kita dapat menerapkannya%%
(generator urutan:
memang memaksa secara otomatis untuk integer).+1
karena indeks R adalah berbasis 1 dan bukan berbasis 0.sumber
PHP> = 5.6, 84 byte
Sangat lurus ke depan:
sumber
Python
129126 byteEDIT : Saya baru belajar s.split ('') = s.split ()
Meskipun ini bukan metode terpendek, berikut ini adalah jawaban alternatif untuk @ Sherlock9:
Coba di sini
sumber
time
berikutnya.PowerShell, 92 byte
Mirip semangat dengan jawaban lain, ditambahkan di sini hanya untuk katalogisasi. Ini mengambil string
"Monkey ... Goat"
dan-split
s pada ruang untuk membuat array, yang lebih murah daripada menentukan elemen secara individual("Monkey","Rooster",...)
. Kami mengindeks ke dalam array itu denganyear
mod saat ini12
, yang menampilkan hasilnya. Tidak ada yang terlalu mewah.sumber
C # 159
Versi yang dapat dibaca / tidak diklik
sumber
J , 78 byte
Pemakaian:
Penjelasan:
sumber