Tugas: Mintalah program Anda secara acak memilih salah satu dari dua kutipan berikut pada saat runtime dan mencetak satu kutipan itu, persis seperti yang ditunjukkan.
1:
Under the spreading chestnut tree
I sold you and you sold me.
There lie they, and here lie we
Under the spreading chestnut tree.
2:
WAR IS PEACE.
FREEDOM IS SLAVERY.
IGNORANCE IS STRENGTH.
Pembatasan: Kata-kata spreading
, chestnut
, PEACE
, FREEDOM
, dan STRENGTH
harus muncul dalam kode Anda. Tidak ada kata dari dua kutipan di atas yang dapat muncul dalam kode Anda lebih dari sekali .
Solusi terpendek menang.
Jawaban:
PHP 179
Terinspirasi oleh jawaban es1024 .
sumber
Perl (
191184 karakter)Terima kasih @ core1024 untuk tips tentang bermain golf ini.
sumber
"you"
dan gunakan$$&1
sebagai generator acak :)Jawa, 338
Saya tidak bisa mendapatkannya di bawah 338 ...
Sedikit tidak diserang:
sumber
java.io.PrintStream p=System.out
, ditambahkan 15 byte ke totalstatic<T>void p(T o){System.out.print(o);}
,, ditambahkan 12). Ada saran lain?Javascript 229
254 256Sunting 1 gunakan
new Date
seperti yang disarankan oleh @Doorknob - masih belum jelas bagi saya bagaimana javascript Tanggal berubah menjadi string atau integer atau apa punSunting 2 disederhanakan. Banyak.
sumber
new Date
lebih pendek dariDate.now()
Date
konversi: > Tanggal JavaScript didasarkan pada nilai waktu yang milidetik sejak tengah malam 01 Januari 1970 UTC. Sehari menampung 86.400.000 milidetik. Rentang objek Tanggal JavaScript adalah -100.000.000 hari hingga 100.000.000 hari relatif terhadap 01 Januari 1970 UTC. , ketika Anda&
itu secara otomatis dilemparkan ke aNumber
. Jadi pada dasarnya Anda membuat pilihan acak berdasarkan apakah itu milidetik genap atau ganjil sejak1970-01-01T00:00:00.000Z
zaman.C #
(268) (260)(256)Ini dapat dieksekusi di LINQPad, menggunakan
Dump()
metode:Tidak Disatukan:
Memperbarui:
Dengan menggunakan operator ternary dan 1 variabel tambahan, saya dapat memotong 6 karakter lainnya:
Tidak Disatukan:
Pembaruan2:
Berkat saran cerdik
tsavinho
saya bisa menyelamatkan 4 karakter lagi dengan menempatkan kawat gigi di sekitar operasi ternary:Tidak Disatukan:
sumber
Python 3 - 228
Sedikit tidak berbulu:
sumber
PowerShell 205
Menggunakan
-f
operator untuk meletakkan string pada kutipan pertama, dan yang kedua diikuti olehIS
, setelah itu memilih elemen acak dari 2 kutipan tersebut dan mencetaknya ...sumber
JavaScript / jQuery 396
sumber
T-SQL,
337327Hanya untuk bersenang-senang, saya telah membuat solusi lain dalam T-SQL, yang satu byte lebih pendek dari solusi Java 8 saya:
Dengan mendeklarasikan file yang
char
terlalu lama, Anda dapat menambahkan ruang 'otomatis', menghemat beberapa byte.Menggunakan kode dalam pengeditan yang diusulkan oleh pengguna PenutReaper, Anda memang dapat mengurangi 10 byte.
sumber
Java Script (233)
Tulis ini tanpa melihat jawaban lain. Manfaatkan tugas dengan baik sebagai ekspresi.
sumber
05AB1E , 119 byte
Cobalah online!
sumber
Python 3 , 222 byte
Cobalah online!
sumber
C (gcc) ,
307289271270 byte-37 bytes berkat ceilingcat
Cobalah online!
sumber