Tulis program hanya menggunakan karakter ASCII yang dapat dicetak yang tidak membutuhkan input. Untuk referensi, berikut adalah 95 karakter ASCII yang dapat dicetak secara berurutan:
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
Ketika program Anda dijalankan, program harus mencetak 0
(plus baris tambahan opsional) ke stdout, lalu berhenti secara normal.
Ketika setiap karakter dalam program Anda digantikan oleh karakter N spasi di sebelah kanannya dalam ASCII yang dapat dicetak, berputar-putar dari ~
ke angkasa, string ASCII yang dapat dicetak idealnya akan menjadi program yang dapat dijalankan dengan bahasa yang sama yang tidak membutuhkan input dan output N (plus opsional trailing newline) ke stdout, lalu berakhir secara normal, untuk N = 1 hingga 94.
Misalnya, jika program asli Anda
@Cat~(88 !)
menjalankannya harus menampilkan 0
dan menggeser semua karakter ke skala ASCII yang dapat dicetak satu per satu
ADbu )99!"*
harus menghasilkan program lain yang menghasilkan 1
. Melakukannya sekali lagi idealnya akan menghasilkan program lain yang menghasilkan2
BEcv!*::"#+
dan seterusnya dengan 3 dan 4, dll. hingga titik pergeseran 94 kali
?B`s}'77~ (
yang idealnya adalah program yang menghasilkan 94
.
Kelegaannya adalah ini hanya perilaku ideal. Program Anda dan 94 turunannya tidak semuanya perlu bekerja, tetapi semakin banyak yang dilakukan secara berurutan sejak awal semakin baik. (Program yang tidak berfungsi mungkin memiliki perilaku apa pun.)
Mencetak gol
Skor Anda adalah jumlah program berturut - turut mulai dari yang asli (yang menghasilkan 0
) yang berfungsi, yaitu dengan benar menghasilkan N. yang sesuai. Jawaban dengan skor tertinggi (maksimum 95) menang. Jika ada seri maka program dengan panjang terpendek akan menang.
Misalnya, jika @Cat~(88 !)
output 0
dan ADbu )99!"*
output 1
tetapi BEcv!*::"#+
kesalahan, maka skor Anda akan 2. Itu 2 bahkan jika ?B`s}'77~ (
secara akurat output 94
dan bahkan jika semua program untuk N = 30 hingga 40 bekerja. Hanya jumlah program kerja yang berurutan , mulai dari nol, yang dihitung.
Catatan
- Untuk melawan pertikaian dan celah potensial, jawaban yang bersaing harus menghasilkan angka dalam desimal tanpa nol atau tanda atau titik desimal (mis. Polos
0
1
2
...94
). - Bahasa yang menggunakan basis atau format angka yang berbeda diizinkan tetapi tidak berhak untuk menang.
- Kehadiran baris tambahan opsional tidak perlu konsisten di seluruh program.
- Fungsi dan perintah REPL tidak diperbolehkan, hanya program lengkap.
sumber
ans = 0
?0
dicetak untuk stdout. Anda dapat melakukan jawaban yang tidak kompetitif.Jawaban:
Ook! , 95 program,
1999214066 byteCara mudah untuk melakukan tantangan ini adalah dengan bahasa yang di-patenisasi yang tidak memerlukan baris baru dan mengabaikan token yang tidak valid.
Diuji menggunakan juru bahasa ini *. Diasumsikan sel 8-bit untuk golfiness ekstra. Program juga sedikit tumpang tindih untuk menghemat beberapa byte.
* Penerjemah ini memiliki kekhasan aneh di mana token terakhir membutuhkan char setelah terdaftar, yang mempengaruhi
n = 62
. Ada penerjemah 8-bit offline tanpa kekhasan ini, tetapi ini adalah yang online terbaik yang bisa saya temukan.sumber
PHP, 95 program,
24392063 byteMembutuhkan opsi output_buffering menjadi Nyala atau beberapa nilai seperti 4096. Standarnya adalah 4096 untuk layanan web (tapi bukan CLI) setidaknya untuk instalasi saya.
Dokter mengatakan
ob_clean
tidak mengembalikan apa pun. Tapi itu tetap benar.Program yang bergeser terlihat seperti ini:
Dihasilkan menggunakan program CJam ini:
sumber
CJam , 10 program, 1 byte
Saya pikir saya sebaiknya menambahkan ini langsung dari kelelawar sebelum orang lain menjadi nakal dan melakukannya: P
Program CJam dengan hanya angka biasa menghasilkan angka itu, jadi ini adalah cara mudah untuk mendapatkan 10 program yang berfungsi, yaitu:
0
,1
,2
,3
,4
,5
,6
,7
,8
, Dan9
.Program berikutnya
:
tidak mengejutkan tidak menghasilkan10
tetapi memberikan kesalahan "operator yang belum selesai".Ini pasti bekerja dalam banyak bahasa.
sumber