Codington Crescent [duplikat]
Mari kita lihat bagaimana kelanjutannya
Jika Anda pernah mendengarkan program radio "Maaf, saya tidak tahu", maka Anda mungkin pernah mendengar tentang permainan yang berjudul "Mornington Crescent". Bagi mereka yang belum, ini adalah permainan di mana pemain memberi nama stasiun acak di jaringan London Underground. Orang pertama yang memberi nama "Mornington Crescent" memenangkan permainan. 1
Dengan semangat yang sama dengan game radio klasik, saya mempersembahkan Codington Crescent untuk Anda .
Tantangan
Pemenang tantangan ini adalah orang pertama yang memposting program kerja yang mencetak string persis Codington Crescent.
Aturan
- Setiap pemain memiliki programnya sendiri yang akan mereka tambahkan / ubah karakternya. Ini disebut program berjalan mereka .
Dengan cara ini, satu-satunya aspek rantai jawaban adalah aturannya. Setiap orang menggunakan program berjalan mereka sendiri. Tidak ada yang berbagi program sama sekali
- Setiap jawaban ( giliran ) harus mematuhi batasan sumber yang ditentukan oleh jawaban sebelumnya. Ini disebut aturan . Setiap varian berlangsung selama 5 putaran . Aturan menggunakan gaya sumber-terbatas , atau pembatasan nama bahasa (tapi tidak keduanya).
- Program yang sedang berjalan dapat mengubah bahasa antar belokan.
- Penjawab ( pemain ) dapat menambah atau mengubah (tetapi tidak keduanya) sebanyak mungkin karakter program mereka yang sedang berjalan per giliran. Atau, mereka dapat memilih untuk "lulus", tidak menambahkan aturan baru, dan tetap menghitung sebagai giliran. Ini mungkin satu-satunya pilihan jika aturan bertentangan satu sama lain. Hitungan belokan masih bertambah dan harus diposting. Tips pro: Anda mungkin ingin menandainya sebagai wiki komunitas karena tidak menambahkan banyak.
- Di akhir setiap giliran, pemain mengumumkan aturan baru yang akan mencakup 5 giliran berikutnya. Aturan harus objektif, dan program verifikasi TIO sangat disarankan. Selain itu, aturan harus dapat diterapkan ke setiap bahasa (misalnya,
Programs must not error using Python 3.4.2bukan aturan yang valid). - Putar terus sampai program yang sedang berjalan mencetak string target.
Aturan Mulai
Untuk memulai permainan, 5 putaran pertama harus mengikuti aturan berikut:
- Ternyata tidak dapat mencetak
Codington Crescent. - Program yang sedang berjalan harus tidak dapat direduksi. (Klarifikasi, bukan perubahan aturan: irreducible dalam hal ini berarti bahwa program tidak menghasilkan keluaran dari keseluruhan program jika karakter dari keseluruhan program dihapus. Yaitu. Tidak ada program yang memiliki keluaran default yang sama yang dapat dibangun dengan menghapus karakter dari program aslinya.)
- Panjang program maksimum adalah 20 byte.
Contoh Aturan
Ini hanyalah contoh murni dari apa yang dapat Anda tambahkan sebagai aturan untuk tantangan. Mereka tidak berlaku kecuali seseorang memutuskan untuk menggunakannya.
Bahasa harus memiliki setidaknya 3 karakter dalam namanya
Huruf pertama dan terakhir dari program yang sedang berjalan harus berupa spasi
Program yang sedang berjalan harus memiliki jumlah byte yang genap
Bahasa harus termasuk dalam kategori praktis di TIO
Program yang sedang berjalan tidak boleh lebih dari 30 byte
Aturan Rangkaian Jawaban Ekstra
- Anda tidak bisa menjawab dua kali berturut-turut. Orang lain perlu menjawab sebelum Anda mencoba lagi.
- Bahasa harus menggunakan Try It Online agar menjadi jawaban yang valid.
1 Game asli Mornington Crescent sebenarnya tidak memiliki aturan ... Ini lebih merupakan aktivitas yang terlihat seperti game yang rumit.
Tips profesional: urutkan menurut terlama untuk aliran jawaban yang lebih kohesif
Template Jawaban
# [Language], turn number [your turn]
<code>
[Try it online link]
[prev answer link]
## Rules
- Rule (n turns left)
- Rule (n turns left)
- Rule (n turns left)
```
Jawaban
R , 43 bytes, codepoint total 59 ^ 2 , turn number 6
Kiriman sebelumnya (giliran 4)
Giliran ini: menambahkan 23 karakter = 'Codington' + 'Crescent' # H
`+`=cat;'Kodington'+'Crescent'#@'C"pr'+'nt'
Cobalah secara online!
Aturan
- Program tidak dapat mencetak Codington Crescent. (Kedaluwarsa)
- Program yang sedang berjalan harus tidak dapat direduksi. (kadaluarsa)
- Panjang program maksimum adalah 20 byte. (kadaluarsa)
- Program harus memiliki substring C "pr (putaran terakhir)
- Program tidak boleh berisi tanda kurung apa pun. (1 belok kiri)
- Panjang program minimum adalah 19 byte (2 belokan kiri)
- Program tidak boleh berisi karakter spasi (3 belok kiri)
- Jumlah titik kode harus berupa kuadrat sempurna yang lebih besar dari 1444. (4 belokan kiri)
- Program hanya dapat mengeluarkan 'Codington Crescent' jika tidak dapat direduksi DAN modifikasi (penambahan ATAU perubahan) paling banyak 8 karakter dari jawaban yang dikirimkan sebelumnya (5 belokan kiri)
R , 158 bytes, codepoint total 105 ^ 2 , turn number 9
Kiriman sebelumnya (giliran 6)
Giliran ini: menambahkan 115 karakter: 'a = "; b =") "; k =" ZPEJOHUPO! ZSFTDFOU "[ \156\143ha\162(a) == 48]; \143a\164( \143ha\162\164\162(" BZ "," aw \ 40 \ 103 "," M ")) '
a="`+`=cat;'Kodington'+'Crescent'#@'C";b=")pr'+'nt'";k="ZPEJOHUPO!ZSFTDFOU"[`\156\143ha\162`(a)==48];`\143a\164`(`\143ha\162\164\162`("B-Z","a-w\40\103","M"))
Cobalah secara online!
Komentar: Aturan pppery (giliran 8) yang melarang program untuk mengeluarkan karakter mereka sendiri telah merusak kesempatan saya untuk memenangkan giliran ini, atau bahkan giliran berikutnya, karena program saya sebelumnya (dari giliran 6) penuh sesak sekarang -karakter terlarang, dan saya tidak diizinkan untuk mengubah kode saya (untuk menghilangkannya) pada gilirannya yang sama seperti menambahkannya (untuk menerapkan pendekatan 'cetak X tanpa X' baru).
Jadi, untuk giliran ini, saya mencoba untuk (1) memulai paruh pertama membangun program saya di bawah aturan saat ini, yang perlu dilanjutkan pada giliran berikutnya sebelum siap untuk menang, dan (2) menambahkan aturan untuk menghentikan kontestan lain saat ini.
Razetime , petStorm dan Szewczyk semua sudah membutuhkan lebih dari> 8 karakter dari perubahan program mereka saat ini sebelum mereka bisa menang. pppery saat ini memiliki program yang hanya membutuhkan 2 karakter untuk dicetak Codington Crescent, meninggalkan 6 karakter bebas untuk mematuhi aturan perfect-square-codepoint, yang mungkin sudah cukup. Namun, pendekatan penambahan +25ke semua karakter yang dicetak berarti bahwa karakter (spasi) dikodekan oleh byte yang tidak dapat dicetak. Selain itu, jika +25diubah,> 8 karakter lainnya perlu diubah untuk mendapatkan Codington Crescentkembali. Jadi saya pikir (harapan) bahwa hanya membatasi kode ke ASCII yang dapat dicetak sudah cukup untuk memblokir program ini (setidaknya untuk saat ini).
Aturan:
- Program tidak boleh berisi karakter spasi (putaran terakhir)
- Jumlah titik kode harus berupa kuadrat sempurna yang lebih besar dari 1444. (1 belok kiri)
- Program hanya dapat mengeluarkan 'Codington Crescent' jika tidak dapat direduksi DAN modifikasi (penambahan ATAU perubahan) paling banyak 8 karakter dari jawaban yang dikirimkan sebelumnya (2 belokan kiri)
- Program tidak boleh mengeluarkan karakter apa pun yang terkandung dalam kode sumbernya (4 belokan kiri)
- Program tidak boleh berisi byte yang sesuai dengan karakter ASCII yang tidak dapat dicetak (yaitu, <32 atau> 126) (5 belok kiri)
Io , putar nomor 1
"MoC"print
Cobalah secara online!
tautan jawaban sebelumnya
Aturan
Ternyata tidak dapat mencetak Codington Crescent. (1 belok kiri)
Program yang sedang berjalan harus tidak dapat direduksi. (1 belok kiri)
Panjang program maksimum adalah 20 byte. (1 belok kiri)
Jawaban Anda harus menyertakan substring
C"pr. Penguji Online (2 belok kiri)
/// , Putar nomor 2
C"prodington
Sunting: Mengubah porgram agar sesuai dengan pedoman tentang irredusibilitas, dibahas di sini . Aturan tidak berubah.
Cobalah secara online!
Aturan
- Program tidak dapat mencetak Codington Crescent. (3 belok kiri)
- Program yang sedang berjalan harus tidak dapat direduksi. (3 belok kiri)
- Program harus memiliki substring
C"pr(4 belok kiri) - Panjang program maksimum adalah 20 byte. (3 belok kiri)
- Program tidak boleh berisi tanda kurung apa pun. (5 belok kiri)
str , 25 byte, putar nomor 8
`*VKPUN\VU*YLZJLU\`25+p;
Perhatikan karakter yang tidak terlihat dengan titik kode 7 antara VUdan*Y
Aturan
- Program tidak boleh berisi tanda kurung apa pun. (kadaluarsa)
- Panjang program minimum adalah 19 byte (giliran terakhir)
- Program tidak boleh berisi karakter spasi (1 belok kiri)
- Jumlah titik kode harus berupa kuadrat sempurna yang lebih besar dari 1444. (2 belokan kiri)
- Program hanya dapat mengeluarkan 'Codington Crescent' jika tidak dapat direduksi DAN modifikasi (penambahan ATAU perubahan) paling banyak 8 karakter dari jawaban yang dikirimkan sebelumnya (3 belokan kiri)
- Program tidak boleh mengeluarkan karakter apa pun yang terkandung dalam kode sumbernya (5 belokan kiri)
Cobalah secara online!
R , 19 byte, putar nomor 4
`+`=cat;'C"pr'+'nt'
Cobalah secara online!
Aturan
- Program tidak dapat mencetak Codington Crescent. (1 belok kiri)
- Program yang sedang berjalan harus tidak dapat direduksi. (1 belok kiri)
- Panjang program maksimum adalah 20 byte. (1 belok kiri)
- Program harus memiliki substring C "pr (2 belokan kiri)
- Program tidak boleh berisi tanda kurung apa pun. (3 belok kiri)
- Panjang program minimum adalah 19 byte (4 belokan kiri)
- Program tidak boleh berisi karakter spasi (5 belok kiri)
Io , putar nomor 3
"idoC"print
Pengiriman asli: Befunge-98 (FBBI) , 19 byte, turn 3
CATATAN: tidak valid per (transkrip)
"nidoC"4k,@@@@@C"pr
Cobalah secara online!
Aturan
- Program tidak dapat mencetak Codington Crescent. (2 belok kiri)
- Program yang sedang berjalan harus tidak dapat direduksi. (2 belok kiri)
- Program harus memiliki substring
C"pr(3 belok kiri) - Panjang program maksimum adalah 20 byte. (2 belok kiri)
- Program tidak boleh berisi tanda kurung apa pun. (4 belok kiri)
- Panjang program minimum adalah 19 byte (5 belokan kiri)
Io , 19 byte, putar nomor 5
"Codin34:::;C"print
Cobalah secara online!
Jawaban sebelumnya
Aturan
- Program tidak dapat mencetak Codington Crescent. (1 belok kiri)
- Program yang sedang berjalan harus tidak dapat direduksi. (1 belok kiri)
- Panjang program maksimum adalah 20 byte. (1 belok kiri)
- Program harus memiliki substring
C"pr(2 belok kiri) - Program tidak boleh berisi tanda kurung apa pun. (3 belok kiri)
- Panjang program minimum adalah 19 byte (4 belokan kiri)
- Program tidak boleh berisi karakter spasi (5 belok kiri)
- Jumlah titik kode harus berupa kuadrat sempurna yang lebih besar dari 1444. (6 belokan kiri) Penguji
/// , Belok nomor 7, FARKLE
C"prodington
Ini langkah yang lewat. Tidak ada perubahan.
Cobalah secara online!
Aturan
- Program harus memiliki substring C "pr (kedaluwarsa)
- Program tidak boleh berisi tanda kurung apa pun. (giliran terakhir)
- Panjang program minimum adalah 19 byte (1 belokan kiri)
- Program tidak boleh berisi karakter spasi (2 belok kiri)
- Jumlah titik kode harus berupa kuadrat sempurna yang lebih besar dari 1444. (3 belokan kiri)
- Program hanya dapat mengeluarkan 'Codington Crescent' jika tidak dapat direduksi DAN modifikasi (penambahan ATAU perubahan) paling banyak 8 karakter dari jawaban yang dikirimkan sebelumnya (4 belokan kiri)