Tuliskan quine yang terdiri dari kata-kata bahasa Inggris nyata yang dipisahkan oleh spasi tunggal. "Kata" didefinisikan sebagai string yang hanya berisi huruf kecil dan besar ( /[a-zA-Z]+/
dalam regex). Untuk menjadi "nyata", kata Anda harus dikenali oleh kamus Scrabble resmi .
Saya menggunakan kamus Scrabble karena memberikan jawaban yang pasti tentang apa yang valid dan tidak valid. Ada terlalu banyak area abu-abu dengan kamus normal. Perhatikan bahwa "A" dan "I" (belum lagi "quine") bukan kata-kata scrabble yang valid.
Karena menulis quine hanya menggunakan huruf dan spasi hampir mustahil di sebagian besar bahasa pemrograman, Anda memiliki opsi untuk mengganti spasi tunggal antara kata dengan karakter pilihan Anda. Anda juga memiliki opsi untuk menambahkan karakter ke depan kata pertama dan akhir kata terakhir. Karakter yang ditambahkan ini bisa apa saja (termasuk baris baru dan non-ASCII) kecuali huruf (az, AZ) . Ada penalti untuk menambahkannya (lihat Mencetak.)
Detail
- Seperti biasa, quines mungkin tidak membaca atau mengakses kode sumber mereka sendiri. (Saya akan mengatakan bahwa perintah Q HQ9 + melanggar ini.)
- Output harus menuju stdout atau alternatif serupa. Tidak ada input.
- Kata-kata tidak perlu ditulis dengan huruf besar dengan benar. Mereka dapat memiliki topi dan huruf kecil di mana saja. Urutan kata-kata tidak perlu masuk akal.
- Tidak ada kata yang dapat digunakan lebih dari 3 kali dalam program Anda. Kata-kata dengan huruf kapital yang berbeda masih merupakan kata yang sama (mis. 'DOG', 'dog', dan 'dOg' semuanya adalah kata yang sama).
- Menggunakan bahasa seperti PHP atau HTML yang dapat hanya kucing keluar isinya dianggap sebagai celah sepele dan tidak diperbolehkan.
- Program harus mengandung setidaknya satu kata.
Mencetak gol
Skor Anda adalah jumlah "kata-kata nyata" dalam program Anda ditambah hukuman ini:
- +1 untuk setiap ruang yang diganti dengan karakter lain
- n n untuk setiap n karakter yang Anda tambahkan sebelum kata pertama (ya, itu n dengan kekuatan n)
- n n untuk setiap n karakter yang Anda tambahkan setelah kata terakhir
Misalnya saja programnya
We all LIKE PROgraMmING
akan skor 4 karena mengandung 4 kata; tidak ada karakter yang ditambahkan atau diganti spasi. Outputnya tentu saja akan We all LIKE PROgraMmING
.
Program
!We@all LIKE#PROgraMmING- =
akan skor 4 + 2 + 1 + 27 = 34; 4 untuk kata-kata, 2 untuk ruang diganti, 1 untuk !
di depan, dan 27 untuk - =
di akhir. Outputnya tentu saja akan !We@all LIKE#PROgraMmING- =
.
Skor terendah menang. Tiebreaker menjawab dengan poin penalti paling sedikit. Jika masih ada ikatan, jawaban tertinggi yang terpilih akan menang.
sumber
Jawaban:
skrip golf, 8 kata + 8 simbol =
2016 (3?)Kata-katanya hanyalah pengisi, intinya adalah inti quine kecil:
Menggandakan dan mengevaluasi suatu fungsi yang hanya menambahkan instruksi untuk menggandakan dan mengevaluasi sendiri. Ketika suatu fungsi dicetak, itu dikomplikasi secara otomatis. Ini adalah quine terkecil yang melakukan sesuatu .
Atau kita bisa menggunakan fungsi literal yang tidak pernah dievaluasi. Tapi rasanya selingkuh ...
sumber
{a`b"x.y~z"c}x.y~z
{whatever}
akan melanggar aturan yang terlalu sepele ("Menggunakan bahasa seperti PHP atau HTML yang hanya bisa mengecek isinya dianggap sebagai celah sepele dan tidak diizinkan.")> <> , 25 kata + (22 + 1 1 + 1 1 ) ekstra =
5749Ya Tuhan, otakku.
Karena aturan menyatakan "Tidak ada input.", Agar program ini berfungsi, Anda perlu menyalurkan file kosong.
Oh dan ya,
brr
adalah kata Scrabble yang valid, sebagaimana adanyatsktsk
danpfft
.Penjelasan
Pertama-tama, kata-kata berikut adalah no-ops:
Ini karena dua alasan:
abcdefl
nomor push (10, 11, 12, 13, 14, 15 dan panjang tumpukan masing-masing). Selain itu,i
tekan -1 jika EOF terpenuhi, karena tidak ada input.p
perintah muncul tiga karakterv,y,x
dan tempat-tempatv
di posisix,y
.Ya,> <> memungkinkan Anda mengubah kode sumber dengan cepat! Kami tidak benar-benar memanfaatkan itu, karena kami hanya perlu
p
untuk bermunculan.Jika kita menyingkirkan no-op ini, kita mendapatkan:
Dalam cara yang sama, yang
laced app
bagian dariplaced apple
dane alp
bagian dariapple alp
juga tidak ada-ops, danrr
daribrr
hanya membalikkan tumpukan dua kali, yang kami juga dapat menghapus:Akhirnya, sesuatu yang terlihat seperti program biasa> <>! Idenya adalah memanfaatkan standar> <> quine, yang berfungsi seperti ini:
'
memulai string parsing, mendorong setiap karakter bertemu sampai kita menekan yang lain'
'
lagi, dan berhenti mengurai string. Hasilnya adalah bahwa kami telah memasukkan setiap karakter dalam program (kecuali yang awal'
) ke stack.Kemudian terjadi hal berikut:
sumber
i
.Ayam , 1 kata
Saya biasanya tidak ke esolang, tetapi yang ini tampaknya sempurna untuk ini. Saya pikir ini adalah quine sejati:
Dorong 1 ayam ke tumpukan. Tumpukan kemudian ditampilkan.
sumber
R, 2 kata + 1 pengganti + 1¹ trailing = 4
Objek yang tidak ditugaskan untuk apa pun hanya dicetak ke stdout. Karena ekspresi adalah objek, kode berikut mencetak sendiri:
Pengajuan sebelumnya, 5 poin:
sumber
Python 2, 58 = 37 kata + 21 tanda baca
Dengan beberapa baris baru ditambahkan:
Tiga penggunaan per kata pembatasan adalah apa yang membuat ini sulit untuk ditulis. Saya ingin menggunakan string dengan semua kode lebih dari 3 kali, dan setiap string harus diisolasi dengan
if else and or
operator yang hanya memiliki persediaan terbatas.sumber
Julia, 1 kata + 1¹ sebelumnya = 2
Julia memiliki objek yang disebut simbol yang didefinisikan menggunakan pendahulunya
:
. Sama seperti solusi R saya, ini hanya dicetak saat dikirimkan.sumber
Baris perintah DOS, 10
Kesalahan quine, sepertinya tidak dilarang
sumber
&
mengkodekan seluruh kode dan berhenti menghasilkan&
sebuah kata?&
dua simbol. 5 (kata-kata) + 1 (membuntuti) + 2 ^ 2 memimpin = 10.Pesona Rahasia , Skor 4 + 3 + 1 1 +1 1 = 9
Cobalah online!
Kata-kata:
hot ox not knot
(4)Penggantian:
3 4 +
(3)Sebelum:
"
(1)Setelah:
@
(1)Semua karakter
GNOQWghtxz
adalah no-op dalam Runic (serta ruang dan titik, tetapi lebih banyak ruang tidak membantu mencetak gol). TermasukX
dank
diperlukan untuk fungsionalitas, ini memberikan daftar kata yang tersedia berikut:Saya memilih cherry berdasarkan kebutuhan ruang yang dimilikinya dan membuatnya terdengar lucu.
Menghapus semua karakter NOP memberikan quine berikut:
Cobalah online!
sumber
Hah? - 1 kata + 1 ** 1/1 ^ 1 = 1 char setelah kata = 2 skor total.
Ouch!
itu quine yang valid di dalam ya?Jalankan seperti
pythuhn.py Ouch!
, dan tidak ada file yang bernamaOuch!
di direktori saat ini.sumber