Tulis satu baris program yang panjangnya dua atau lebih karakter yang tidak mengandung terminator garis dan tidak membutuhkan input. Misalnya, program Anda mungkin:
MyProgram
Ketika program Anda diatur ke dalam bentuk-bentuk yang dibuat oleh jarum jam pada pukul 12, 3, 6, dan 9, program ini perlu menampilkan nomor jam yang sesuai. Tidak ada waktu lain yang perlu didukung.
Secara khusus:
Ketika program Anda diatur seperti jarum jam pada pukul 12 (π)
m a r g o r P y M
menjalankannya harus menampilkan
12
.Ketika program Anda diatur seperti jarum jam pada pukul 3 (π)
m a r g o r P y MyProgram
menjalankannya harus menampilkan
3
.Ketika program Anda diatur seperti jarum jam pada pukul 6 (π)
m a r g o r P y M y P r o g r a m
menjalankannya harus menampilkan
6
.Ketika program Anda diatur seperti jarum jam pada pukul 9 (π)
........m ........a ........r ........g ........o ........r ........P ........y margorPyM
menjalankannya harus menampilkan
9
.
Catatan
Karakter pertama dalam program Anda selalu ditempatkan di tengah jam. (Perhatikan bagaimana hanya ada satu
M
dalam contoh jam 6.)Setiap karakter non-baris baru dapat digunakan untuk membuat indentasi program untuk pengaturan jam 9. Dalam contoh
.
digunakan, tetapi ruang atau/
atau#
akan sama validnya.Untuk pengaturan jam 3, tidak boleh ada karakter di daerah kanan atas yang kosong. (mis. biarkan kosong, jangan mengisinya dengan spasi.)
Pengaturan program awal (
MyProgram
sebagaimana adanya) tidak perlu melakukan apa pun. Hanya pengaturan jam 12, 3, 6, dan 9 yang perlu memiliki output yang benar dan terdefinisi dengan baik.Kode yang hanya berfungsi sebagai fungsi atau perintah REPL tidak diizinkan. Masing-masing dari empat pengaturan harus siap dijalankan sebagai program penuh sebagaimana adanya.
Program terpendek dalam byte menang. misal MyProgram
memiliki panjang 9 byte.
sumber
3
dan6
tidak bisa dibedakan dengan Brainfuck karena hanya berbeda di spasi putih.Jawaban:
GolfScript,
1110 byteDigunakan
#
sebagai karakter padding.jam 12
Cobalah online!
Bagaimana itu bekerja.
6
didorong pada tumpukan,;
buang.]
membungkus tumpukan dalam sebuah array (tidak mempengaruhi output).9
dan3
didorong pada tumpukan,;
dan;
buang.Akhirnya,
1
dan2
didorong pada tumpukan, dan dicetak secara implisit tanpa pemisahan.Jam 3
Cobalah online!
Bagaimana itu bekerja
6
didorong pada tumpukan,;
buang.]
membungkus tumpukan dalam sebuah array (tidak mempengaruhi output).9
dan3
didorong pada tumpukan,;
dan;
buang.1
dan21
didorong pada tumpukan,;;
buang.3
didorong pada tumpukan.#
mulai komentar hingga akhir baris.jam 6
Cobalah online!
Bagaimana itu bekerja
6
didorong pada tumpukan,;
buang.]
membungkus tumpukan dalam sebuah array (tidak mempengaruhi output).9
dan3
didorong pada tumpukan,;
dan;
buang.1
,2
dan1
didorong pada tumpukan.;
dan;
buang yang terakhir1
dan2
.3
dan9
didorong pada tumpukan.]
dan;
bungkus stack dalam sebuah array dan buang, membersihkan stack.6
didorong pada tumpukan.pukul 9
Cobalah online!
Bagaimana itu bekerja
Semua baris kecuali yang terakhir adalah komentar.
6
didorong pada tumpukan,;
buang.]
membungkus tumpukan dalam sebuah array (tidak mempengaruhi output).9
didorong pada tumpukan.#
mulai komentar hingga akhir baris.sumber
> <> , 20 byte
Ada unsintables di sana, yaitu:
X
itu\x06\t
c
itu\x03
Bagian yang sama dari kode sumber dijalankan setiap kali, menggunakan
g
dua bagian dari kode sumber untuk menentukan apa yang harus dikurangi dari 12.Jam 12 | Jam 3 | Jam 6 | Jam 9 (terlihat tidak selaras karena tab)
sumber
ROOP , 54 byte
Digunakan
<
sebagai karakter padding.Jam 12 | Jam 3 | Jam 6 | pukul 9
jam 12
Yang
1
dan2
yang dekat jatuhnya atas selama 3 siklus. Ketika mereka mencapaiW
operator, operator menempatkan nomorO
, yang mewakili output.Di
1
bagian inijatuh selama 2 siklus,
V
operator memindahkannya ke bawah dan pada siklus berikutnya mengaktifkanH
operator yang mengakhiri program.Jam 3
O
juga benda-benda yang bergerak dan jatuh. Karena kode sekarang memiliki garis dengan lebih dari satu karakter, semua baris lainnya diisi dengan spasi kosong. SemuaO
bergerak ke kanan dan jatuh, menyebabkanW
operator tidak memiliki tempat untuk mengirim1
dan2
.Satu-satunya
O
yang tidak bergerak adalah yang terperangkap di tengah. The3
atas jatuh selama 4 siklus keW
.Kemudian angka yang jatuh mengisi 4 spasi antara
W
dan3
. Ketika diisi, nomor lain dapat melewati mereka semua dan mencapaiH
operator yang mengakhiri program.jam 6
Sangat mirip dengan 12,
6
jatuh keW
dan1
keH
. Ini terjadi dalam 2 siklus, mengakhiri program sebelum 12 kasus terjadi.pukul 9
(Saya menunjukkan satu kolom
<
karena yang lain tidak melakukan apa-apa).The
V
picks up9
dan bergerak ke pipa bawah, yang mengalihkan objek ke kiri. Pipa<
memindahkan objek ke bawah dan yang berikutnya ke kanan. TheV
Operator menempatkan9
di ruang bawah dan kemudian dikirim ke output.Yang
1
membuat gerakan sama dan mencapaiH
, yang mengakhiri program. Ketika pipa memindahkan objek dalam siklus yang sama, semua ini membutuhkan satu siklus tunggal.sumber