Kita semua tahu, atau setidaknya pernah mendengar, brainfuck , salah satu bahasa esoteris yang paling terkenal dan berpengaruh. Sementara saat ini sebagian besar implementasi menggunakan pita tak terbatas, kompiler asli oleh Urban Müller memiliki pita 30000 sel. Fakta yang sedikit diketahui * adalah bahwa sebenarnya ada nilai khusus di akhir rekaman, sesuatu yang hampir tidak pernah berinteraksi dengan program brainfuck khas.
Meskipun Anda dapat mencetak nilai ini dengan 29999 >
s dan a .
, brainfuck dikenal untuk solusi singkat dan ringkasnya, jadi tujuan Anda adalah mencetak nilai ini dengan jumlah karakter minimum.
*fiksi
Aturan:
- Penyegaran pada instruksi brainfuck:
+
/-
: Menambah / mengurangi sel saat ini, membungkus dari 255 ke 0 ketika 255 bertambah dan sebaliknya<
/>
: Pindahkan pointer ke kiri / kanan pada kaset.
: Cetak nilai sel saat ini.[
: Langsung ke yang sesuai]
jika nilai pada sel adalah 0]
: Langsung ke yang sesuai[
jika nilai pada sel bukan 0
- Dalam hal ini
,
(Dapatkan input) tidak melakukan apa-apa, karena kompiler asli membiarkan sel tidak berubah pada EOF, dan program ini seharusnya tidak menerima input. - Rekaman awalnya diisi dengan semua 0s, kecuali untuk sel 30000, yang berisi nilai yang tidak diketahui
- Pointer dimulai pada sel 1 dan harus berakhir pada sel 30000, setelah mencetaknya.
- Sel di sebelah kiri 1 dan di kanan 30000 memiliki perilaku yang tidak terdefinisi, jadi solusi tidak boleh mengunjungi sel-sel ini.
- Perhatikan bahwa nilai pada 30000
adalahmungkin 0, jadi hanya perulangan sampai Anda menekan non-nol sel tidak akan bekerja. - Anda hanya harus mencetak nilai di sel 30000
- Solusi terpendek menang!
- Tie-breaker adalah program yang lebih efisien (dijalankan dalam langkah paling tidak), diikuti oleh waktu pengiriman tercepat.
Kiat: Esolanging Fruit menyarankan menggunakan https://copy.sh/brainfuck untuk menguji kode Anda. Spesifikasi seperti yang dijelaskan dalam tantangan ini, dan Anda dapat memilih abort
opsi sehingga program Anda berhenti jika melampaui batas.
.
. Saya menang.