Ada 8 negara bagian dan teritori Australia, masing-masing dengan singkatan 2 atau 3 huruf:
- ACT: Wilayah Ibu Kota Australia
- NSW: New South Wales
- NT: Wilayah Utara
- QLD: Queensland
- SA: Australia Selatan
- TAS: Tasmania
- VIC: Victoria
- WA: Australia Barat
Tugas Anda adalah menulis fungsi / program yang menggunakan singkatan negara bagian Australia yang valid dalam huruf besar, dan mengembalikan nama lengkap yang benar (peka huruf besar kecil seperti di atas).
Tidak ada spasi tambahan yang diizinkan, selain satu baris baru di mana ini adalah efek samping yang tidak dapat dihindari dari setiap program dalam bahasa itu.
Sebagai contoh:
f("TAS") => "Tasmania"
Standar kode-golf aturan (kode terpendek dalam byte menang!) Dan celah berlaku.
code-golf
kolmogorov-complexity
Steve Bennett
sumber
sumber
Jawaban:
Retina ,
135121 byte13 byte golf berkat @Neil dengan menggunakan taktik penyisipan ruang yang cerdas, yang menginspirasi satu byte lagi yang di-golf
Cobalah online!
Perhatikan spasi tambahan pada baris keempat dan terakhir.
sumber
AS
dengan yangasmania
pertama, maka Anda dapat mengganti semua yang tersisaA
denganAustralia
.\B[A-Z]
akan menghemat dua byte.)Jelly , 56 byte
Tautan monadik yang mengambil dan mengembalikan daftar karakter.
Lihat semua case di Coba online!
Catatan: Menggunakan kembali kata-kata "Australia" dan "Wilayah" tidak membantu mengurangi jumlah byte.
Bagaimana?
Mengambil jumlah ordinals dari delapan singkatan negara modulo 15 memberikan 8 nilai unik. Mengambil hasil dari modulo 9 mempertahankan keunikan.
sumber
Haskell,
193192 byteSolusi yang agak naif, tetapi saya ingin pergi untuk tantangan yang cukup sederhana untuk pertama saya. Saya bahkan tidak yakin apakah lebih baik mungkin di Haskell.
Menyimpan byte dengan memindahkan spasi ke t
sumber
Mathematica, 177 byte
Solusi yang jelas: (199 byte)
Solusi yang ditingkatkan: (182 byte, hanya dapat dijalankan di komputer Wolfram Mathematica 10.2 saya)
Solusi terbaik:
Sayangnya pengulangan
" Territory"
hanya bisa menghemat 0 byte.Tampaknya fungsi Hash default Mathematica berubah dari versi ke versi. Tetapi menambahkan metode akan membuat kode lebih lama. Menggunakan fungsi Hash default dari kotak pasir Mathematica sekarang dapat membuat kode lebih pendek sekitar 9 byte.
Mathematica (kotak pasir - sekarang - versi 11), 168 byte
sumber
Python, 181 byte
1 byte disimpan berkat @Jonathan Allan
Cobalah online!
sumber
t=' Territory'
harus menyimpan byte yang saya pikir.Sed,
167157 bytesumber
ern
, tetapi harganya lebih mahal dari yang dihemat hanya untuk dua penggunaan.PHP,
148143 byteDisimpan 5 byte berkat Jörg Hülsermann .
sumber
C # , 289 byte
Data
String
s
Singkatan negara.String
Nama negara yang diperluasGolf
Tidak disatukan
Tidak terbaca dibaca
Kode lengkap
Rilis
289 bytes
- Solusi awal.Catatan
sumber
(string s)
bisa sajas
, Anda bisa menggunakan pengembalian implisit:s=>new System....
dan Anda bisa menghapus tanda titik koma.Rexx (Regina) ,
148147 byteCobalah online!
sumber
JavaScript (ES6), 167 byte
Tampilkan cuplikan kode
sumber