Tulis program yang menampilkan semua 64 lapisan representasi nomor Graham ini dari Wikipedia:
Keluaran Anda harus sama persis dengan versi ASCII ini (di mana ^
mewakili panah atas Knuth dan kombinasi garis miring dan garis bawah mewakili tanda kurung keriting horizontal besar):
3^^...............................................................................................................................^3
\_______________________________________________________________ _______________________________________________________________/
\/
3^^.............................................................................................................................^3
\______________________________________________________________ ______________________________________________________________/
\/
3^^...........................................................................................................................^3
\_____________________________________________________________ _____________________________________________________________/
\/
3^^.........................................................................................................................^3
\____________________________________________________________ ____________________________________________________________/
\/
3^^.......................................................................................................................^3
\___________________________________________________________ ___________________________________________________________/
\/
3^^.....................................................................................................................^3
\__________________________________________________________ __________________________________________________________/
\/
3^^...................................................................................................................^3
\_________________________________________________________ _________________________________________________________/
\/
3^^.................................................................................................................^3
\________________________________________________________ ________________________________________________________/
\/
3^^...............................................................................................................^3
\_______________________________________________________ _______________________________________________________/
\/
3^^.............................................................................................................^3
\______________________________________________________ ______________________________________________________/
\/
3^^...........................................................................................................^3
\_____________________________________________________ _____________________________________________________/
\/
3^^.........................................................................................................^3
\____________________________________________________ ____________________________________________________/
\/
3^^.......................................................................................................^3
\___________________________________________________ ___________________________________________________/
\/
3^^.....................................................................................................^3
\__________________________________________________ __________________________________________________/
\/
3^^...................................................................................................^3
\_________________________________________________ _________________________________________________/
\/
3^^.................................................................................................^3
\________________________________________________ ________________________________________________/
\/
3^^...............................................................................................^3
\_______________________________________________ _______________________________________________/
\/
3^^.............................................................................................^3
\______________________________________________ ______________________________________________/
\/
3^^...........................................................................................^3
\_____________________________________________ _____________________________________________/
\/
3^^.........................................................................................^3
\____________________________________________ ____________________________________________/
\/
3^^.......................................................................................^3
\___________________________________________ ___________________________________________/
\/
3^^.....................................................................................^3
\__________________________________________ __________________________________________/
\/
3^^...................................................................................^3
\_________________________________________ _________________________________________/
\/
3^^.................................................................................^3
\________________________________________ ________________________________________/
\/
3^^...............................................................................^3
\_______________________________________ _______________________________________/
\/
3^^.............................................................................^3
\______________________________________ ______________________________________/
\/
3^^...........................................................................^3
\_____________________________________ _____________________________________/
\/
3^^.........................................................................^3
\____________________________________ ____________________________________/
\/
3^^.......................................................................^3
\___________________________________ ___________________________________/
\/
3^^.....................................................................^3
\__________________________________ __________________________________/
\/
3^^...................................................................^3
\_________________________________ _________________________________/
\/
3^^.................................................................^3
\________________________________ ________________________________/
\/
3^^...............................................................^3
\_______________________________ _______________________________/
\/
3^^.............................................................^3
\______________________________ ______________________________/
\/
3^^...........................................................^3
\_____________________________ _____________________________/
\/
3^^.........................................................^3
\____________________________ ____________________________/
\/
3^^.......................................................^3
\___________________________ ___________________________/
\/
3^^.....................................................^3
\__________________________ __________________________/
\/
3^^...................................................^3
\_________________________ _________________________/
\/
3^^.................................................^3
\________________________ ________________________/
\/
3^^...............................................^3
\_______________________ _______________________/
\/
3^^.............................................^3
\______________________ ______________________/
\/
3^^...........................................^3
\_____________________ _____________________/
\/
3^^.........................................^3
\____________________ ____________________/
\/
3^^.......................................^3
\___________________ ___________________/
\/
3^^.....................................^3
\__________________ __________________/
\/
3^^...................................^3
\_________________ _________________/
\/
3^^.................................^3
\________________ ________________/
\/
3^^...............................^3
\_______________ _______________/
\/
3^^.............................^3
\______________ ______________/
\/
3^^...........................^3
\_____________ _____________/
\/
3^^.........................^3
\____________ ____________/
\/
3^^.......................^3
\___________ ___________/
\/
3^^.....................^3
\__________ __________/
\/
3^^...................^3
\_________ _________/
\/
3^^.................^3
\________ ________/
\/
3^^...............^3
\_______ _______/
\/
3^^.............^3
\______ ______/
\/
3^^...........^3
\_____ _____/
\/
3^^.........^3
\____ ____/
\/
3^^.......^3
\___ ___/
\/
3^^.....^3
\__ __/
\/
3^^...^3
\_ _/
\/
3^^^^3
Perhatikan bahwa ada 64 lapisan, bahwa tidak ada spasi tambahan, dan dua ^
terjadi sebelum titik dan hanya satu yang terjadi setelahnya.
The hash MD5 output Anda harus tepat menjadi c84d0e20eac2a7f891ab42a8eb77759f
, atau 1ad3b10d06e38693436c14958b2c47a8
jika ada baris baru Trailing (yang ok).
Kode terpendek dalam byte menang. Output ke stdout. Tidak ada input.
code-golf
kolmogorov-complexity
Hobi Calvin
sumber
sumber
1ad3b10d06e38693436c14958b2c47a8
seperti yang diberikan oleh grc, atauc84d0e20eac2a7f891ab42a8eb77759f
jika karakter baris baru akhir dapat dihilangkan.Jawaban:
CJam - 64
Cobalah di http://cjam.aditsu.net/
sumber
Python, 122
Contoh:
sumber
Perl - 113 (112 + 1 untuk -E)
Golf:
Tidak Disatukan:
EDIT: Ada kesalahan dalam interpolasi string di mana perl berpikir $ m3 adalah variabel, jadi saya harus menambahkan 2 karakter untuk memperbaikinya.Dipecahkan dengan mengubah $ m menjadi $.NINJA EDIT: Diganti instance dari "" dengan $ ". Menghemat 2 karakter
NINJA EDIT 2: Terima kasih @chememagic untuk menunjukkan bahwa saya dapat menggunakan say bukannya mencetak dengan -E untuk menyimpan karakter.
TIDAK-SO-NINJA EDIT 3: @ Solusi Nax mengalahkan solusi lama saya, jadi saya gosok sedikit untuk menahannya.
sumber
say
sebagai gantiprint
dan kemudian menjalankannya dengan-E
alih - alih-e
(jika versi Perl Anda cukup tinggi). Tampak hebat!Haskell, 152
sumber
+1
dan tambahkan saja titik sebelumnya"^3"
.C 161
182(saya pikir saya maksimalkan metode ini, mungkin saya harus menemukan yang baru yang dapat diturunkan lebih lanjut)
kompilasi sebagai C99!
JS 158
xem.github.io/obfuscatweet/ 124:
sumber
Bash + coreutils, 150
Saya pikir saya mungkin bisa melakukan lebih baik dari ini. Baiklah.
Keluaran:
sumber
STATA 135
sumber
JavaScript 179
Uji di konsol browser Anda atau di http://jsfiddle.net/2qwvrvcw/ .
sumber
Javascript (203)
Tidak Disatukan:
sumber
C # (
212211).Net Fiddle (sepertinya mengharuskan kelas dan metode Utama bersifat publik)
Sedikit tidak berbulu:
sumber
Perl,
116112109108 (termasuk -E)Upaya pertama saya bermain golf. Silakan anggap seperti ini:
Golf:
Sangat sedikit ungolfed (tidak dipertahankan ...):
Pada dasarnya ini bekerja seperti ini: untuk setiap baris 3s dan penjepit (ini ditangani bersama-sama), ia menulis urutan mereka yang dikodekan dengan RLE , kemudian menerjemahkannya. Aturannya sederhana: setiap karakter diikuti oleh angka diperluas ke karakter itu beberapa kali. Karakter tanpa nomor dibiarkan sendiri. Akhirnya, karakter
!
menunjukkan 3 dan aN
berarti baris baru (3 harus dikodekan karena nomor dan akan bersemangat berpartisipasi sebagai jumlah pengulangan).Setiap baris 3s dan brace-nya mendapatkan elemen dalam array 64-elemen yang dihasilkan peta. Katakanlah, seperti cetak, dapat menampilkan array - jika diberi array, ia mencetak semua elemen (tanpa pemisah apa pun).
Saya menggunakan trik chilemagic dengan
-E
. Terimakasih untuk ini.Bala bantuan: Dua solusi 113 byte mulai mengintai di sini. RLE tidak akan menyerah tanpa perlawanan!
Pembersihan Umpan : Saya sekarang menyadari bahwa saya tidak memerlukan transliterasi khusus \ n, karena semua string di Perl secara otomatis berganda! Jadi RLE menempel lebih dekat ke punggung Ruby! Sekarang pada 109 byte.
Agonizing Enlightment : Menghitung karakter dengan benar lebih sulit dari yang saya kira. Setelah beberapa kesulitan, saya memutuskan
(-1, karena itu menghitung LF di bagian paling akhir skrip). Selain itu saya telah mengatur ulang tugas saya dan menyelamatkan 1 karakter, dengan ini menetapkan pada 108 byte.sumber
MATLAB (325)
ungolfed:
MATLAB (252)
ungolfed:
sumber
PHP 214
Kupikir aku baik-baik saja sampai aku menghitung karakter, toh ini dia -
sumber
->' '
,<br>
->\n
)<?
di awal kode - itu harus program yang valid, bukan fungsi.<?function a($n,$v=" "){return str_repeat($v, $n);}for($i=64;$i>1;){$b=a($i-1,"_");$v.=a(64-$i)."3^^".a($i*2-1,".")."^3\n".a(65-$i--)."\\$b".a(2)."$b/\n".a(65)."\/\n";}$v.=a(63)."3^^^^3";echo$v;
php grahams.php | md5sum
:c84d0e20eac2a7f891ab42a8eb77759f -
Lua - 174
Sebelum itu, saya mendapat dua solusi yang berbeda secara algoritmik (keduanya 182!):
sumber