Setiap karakter dalam blok teks 64 x 64 ini telah dipilih secara acak dan seragam dari 95 karakter ASCII yang dapat dicetak .
/rq$:Zy5*g'$DeGXX2o8y "{@Cg:FR9qih}xh >5$DsF1Fs5Ao~smFp;.RJbV )U
c4\(|Sx*V$10G9xO:NjHKasem%,\9[pPm@&kTaN~HC[;9`lgqlAH(7dt0a-5}LJ[
&sifw9V-.PLRoD~F'dJYA^Q)L#h>$9h!B4b&ceKp8~HndzDm#1/ySydrf5T8[Y%4
U9>HLQ74Qf[^V9tpWrKFcFxZJ::4?z/o]3u,V[B&hB9lFYA0:rW#yql5z9.d*D}U
:M2*O9'7_HMGw_=%@hR>O+(@Dr6MIt(=/{-{4lia0Vmws32wr(fnTmT%HSo&7!uz
\KZWG&KnXh+6E+Q>%pV(<Bnm-d+p~y~]Ta"aw9)]0A_AHz\tP3&}1R^/yPPSgN?8
".7|Uj)S7-k[`yeLO~P2a?z3wiS(R-\k'?z(pVm;;D^k/q84?&7:,E*9$UQ"UbBJ
ME]&*R ,*7PDF4Tw*-;De{YeP_al.CJcJX`@V_y+>^<h{L[^Y"!RxjN^lyA_/Y=(
#C>Zo#Sl;UUD5ChIj'L@rkELk%S*]a$87j\\n;}796m/\NPL>8d-T-hR!7ftw ?A
tV5"E309bAv$jhE6\'8f?VGlBb?z#V;F((3'|}$tfpiNB>"*mxc,X1s:/%x*JQAL
rxYXUJsd?X}^yc|'16539vd=psU'>|y/!$-TRamKcJk^2-aD35h7CcaRNue"8#{;
@yUq?*(72I8@I)So+]RwtKy:mLhjG/f#:U<TXml<PtX*+,ngfZt75-q*gSsyI2tS
|*M*;yz6u2(LZ>W`bth-7G~>|dh'pm}]@"#Oq9%o\W)b,gh%b1O]4F:EGb7ERI=@
ehMo69slKw=S@<j*Q4sfd\1')#)V&yaPF%%ZG6VK\_-$Cab,nrlW"O(<tu&xU=I&
|[g4k2L;FD)=yX0SsE-|vI(mDOccuU(+m\wxgrJxi8ZP[uD)L.!K@]%@q`!pk8Yx
?PZaS3;x,7nK~IHlrCGy~xq:@K/CJ1J^oeac&Tv?6[H>>0lu?(/bh@6J^@S?IY-|
@tdN$K=Ci2;_0Du;L2OO'en|]<_`nX5p3Bes9`8{}fRCV$X&aoQGYS'$j%r<2709
UwETsAo^d!aUZ0vN5,Yq\n%JAIm}%O88FAJK^Jt&=jM\Q1^+^|X8\._"l%hlF+yH
+c^FBFxTGz|f|#kElQs)mS64-3Z\An]|[rQo"OQ+ IP"ARdJ}/OYFQF_/{B 73mU
UPvxNByN[2TT,XgRZ_LwolUVWuR)DjYI7j#mmA8m?&Y}}[_h8@Y-R*,#=1\D*&@*
ePW.w{@z3moe3Vztd,>?*~ZQUvn8$+xw$$f92D*kPZ":;lcTr3m&{*?j$FgZK|cU
IAd'0C{<4b}NuhX1B#gmk'oF4+(@fzP^T?hF/#]g^y rb5][)X-d4Q't~1]HE"tZ
p2Z,%H0$EWF/%|UQm?&]E~=v;9YwxrSs%}df`[ `SfXMJWt86UY1duGAAKkFSrH!
oUyB[soS!N%XYwX]%n K^}CcTE?~.,8`C&l)Jjjp5|z))!o/ "G)sj,{OETsi:KE
4E,':a=,T~YlxdF^<\$fE|f:_-RG}7=m%g\-9a*X]`n<P$D+q7O`+$P&!\"NUs7n
hL@0s 7i^Xp\._4$lZIB9Ql AXX_00K=<hp%55KSO6yWH~cGe%|(p_WzlhPUbH{?
o5b4pi(,]&&jB\hGa:\DQbrYc,n|,b)_E{n~i~+JSxn?%/qJVm|B 8"Jf||L.|M-
KRxH;T^Z7%ZufyO=nI;[v1\8ZTg\_)ect4DvMTvqtoo(;b~J&'~E2TTD!w1BvGv
Q+1sv>q%1$BaCm%(\%uGH*]emoFwejkhb$gKm=DVG#&:p'";s)&MY30q_cG=.CKJ
q,aWTi|^w2wg3<G_y<n+^Xq2ymHFs#7z[x0l'Lz6N>Mpo?=hAd&58HVMhsh(kQH5
&kSivkn`,KON9xb:$M[L15!D6W?\ASWc#}V#2U;qxKhtil73,!iuG~(lr[tPJQ6w
IZ)0Vp{kEUID:vgwmTMQ#Y]NdX6{'/3bI2x9k 4[>j)&Q0U,t,iA#A%4929o6+n_
SQe/!KubbuXthMe&2\%:'Z`,aaA)V&(v+]0^v-_@*Qg!^K!pCo"@e/|3}.3q^R||
6hF>/jd>(=il~2$KY.^x~K_H)J8Fi)'LOcUr4xJir^v0,c fIsoT<|7K}Bls|36z
MQ|-w=bp)_EY>YtGcW)!@/|Lc:I_<]x.~[|QSgJY1ZX9^e`ojAR6U#zt9!,44}>#
EJzH \gwosC>Z*)H!]1BPaIEYGyk{c0zv{d\#px2@#'-T{{.Qxknxv}"x3#K]w>;
<X(\bNnY_6*7Yu7_3a+wInwt vh=1eBgz>7Bnhs!<t.T#&V{+?p+{.RTN:xz>|,E
$upN*[F4A`~ZDMDt{.&2z+LZ7bcfeJfF9Uy3xX]ZzQ1FvB.U4S!hm$LYCp: wF7h
47-+lY$"}AExXQ@?!/6}biptH=6N-6&8-T\C8{`i56e'%cimv,0QKYTx) "nkFJ
C:Enw=Q%6J;t6wS+2O,b0v'"OK6GMbr);y#-H86>pCE6wjdk*rR*=reWo57^2TFH
::Nq,t9_S">\o^NZzh|U\^qyh-yt0nvMs%'6\;$%(91gTC=&1q]q-*u*so KrXsE
-Sz>q]l86[OO@\5W<'\XDc,%/=0sV0&1'Etty%f ~,c45IIqy=no.DY{8\?fa<9{
6%3TP:i^q.JzU217CADu}iAzWT""E\{IEMbGDKZB6s*LmlM0|<WA8CP7sR}f?WSL
S`T} 7Tn9!h8P\W 8J\#Mg\o;Qwt&4\UYKf{)O3G&B]sK.bw1!?7=:h$IIOIakD<
H/O5v`ld*35MSsydSQoiAnJ*\!^?'_=6E?c> PtM!rw5y{ZT2xSco){3_?j|wtJp
CT1!e~k8aNgw)LE:}oX4R*<u]TB%\IN8YoMK'bV%L2H{L3'c/|xoTY^&&WPKSyo<
cXma$Rfjj^':^a\?$UOo48]791Wywj7aH1\iP|\l=sjjbjqZB2)-apvjV@q47Spw
OP[kT<l@cKB="n;VC#6a*InmS~$TN{= j)r>S] uH9:E-}y>.Ygc'll$5Y$j]AYt
jB="iGo7[qY~A*nv.\51[<]):^[iZs4s-D_bC'OfM%lHlz;MoxY$Ku]NCt72PYMB
_(myN5'%] C!7FPoGX7+*,Yptuaz;Q6W,;R|U1XEhgq21R7<ncnDB<D_);j.:r0r
Q6!k|Dq`!Jz7l="*n?w@f|h=PA_A)n._ii:s~'n~XsD}?JRIkC9AW^piUfBTU,ui
nf+yZ`7P-(@{>s:{Vz'N 7qB&+UZbm4'0]D~HZNJq.w</3 \cL)WRDP(y]w~L4N/
!!lA+NK[+9#-iwx`PE53D.K2]]#M.Rm$^Cc'|!@cX6{yCg8K0|>E_jyup|+'=#c%
Ao5$B);DoQ#jg[7GbdE+o:R,T#@`;UnX}.?2z\RJ98Se*_.*e8mCUF}Vw1u13cy1
2s}1@?{0);Jo6(J@l>[M 0CkeO6{ExN7,%Kv1#[!** czaX)=;Q~D;z',fkq!1W<
% f(i#i`PQY!m7v#D:j5pyU]8:at2,k("BWZRI<WR??GQ$^1d[m,F(<e5CLv-m*B
CD)zVpa95WpJ K@&}yN\Q8I<%z/*_/bPsR5=0\Z=#mWZDAfA5[k|$Yks@Q;@h,s/
Np.$gTvz>T+"0|$Nw::%m$GFYxG{2akv$Eh8\4|eW'oJEffNzJ>UxU4>oITZMe/'
EMg$>kD|\ ^.W)Stzv/7z\^bdi]E@] U&-r8(B^?}$P56[?e~jE#_j)5=#~.yNP$
'mgF3EAhXB 55)\WXp*e+fD#^&SHGx++7VO[R7*b(Q+:jESt'K%m~d$Bv^/{7=zr
5oCZDp& ;*Y*G`L$C]Nm`|^:y2NKaO!)u/{hwm(VjS`<qKgNw7[+~0 <be'sWjTo
[email protected]*ml)pLeEVJ~8A$mgz*d>ajbg1FIYrg6J`D0xJMXi`ghA1V$ju
*rJg/ o;6M7`(qTF.nO'4da,{ieM&NC9rg;nX*))*DK"DycYD66&6z/I@}y4@$<f
3S]~9g An{=Rj|y&A2Vh^F\3lb#N~8w0EMx<K$]z(eZS~zbmgeeV\i7,MY~zrc+;
Tugas Anda dalam tantangan ini bukan untuk menulis kode Anda sendiri, melainkan untuk mengekstrak kode dari blok teks ini seolah-olah itu adalah kotak Boggle yang besar dan Anda sedang mencari program yang bisa dijalankan daripada kata.
Pengajuan dengan program yang menghasilkan output terbatas terpanjang menang.
Detail
Perlakukan 64 dengan 64 kisi teks persis seperti kisi Boggle 64 oleh 64 dengan karakter tambahan. Bangun string yang merupakan program runnable dalam beberapa bahasa dengan memilih lokasi awal di grid dan berulang kali memindahkan satu langkah secara vertikal, horizontal, atau diagonal (total 8 arah) sebanyak yang Anda inginkan. Anda TIDAK boleh menggunakan ruang kotak yang sama lebih dari sekali!
Misalnya, 4 baris ini diambil dari dekat bagian tengah blok teks:
EJzH \gwosC>Z*)H!]1BPaIEYGyk{c0zv{d\#px2@#'-T{{.Qxknxv}"x3#K]w>;
<X(\bNnY_6*7Yu7_3a+wInwt vh=1eBgz>7Bnhs!<t.T#&V{+?p+{.RTN:xz>|,E
$upN*[F4A`~ZDMDt{.&2z+LZ7bcfeJfF9Uy3xX]ZzQ1FvB.U4S!hm$LYCp: wF7h
47-+lY$"}AExXQ@?!/6}biptH=6N-6&8-T\C8{`i56e'%cimv,0QKYTx) "nkFJ
Dimulai dengan di p
dekat ujung kanan dari baris ketiga saya bisa pindah ke dengan diagonal ke bawah dan ke kanan, lalu ke
"
dengan ke kanan, lalu naik 3 kali lipat zK
, dan kiri 4 kali lipat #3x"
. Ini melacak string p " zK#3x"
yang ketika dijalankan sebagai keluaran program Ruby" zK#3x"
.
Tujuannya adalah untuk menemukan program yang menghasilkan keluaran hingga terpanjang . Hanya karakter ASCII yang dapat dicetak yang dipertimbangkan ketika menghitung panjang output (ini berarti tab dan baris baru tidak dihitung), meskipun karakter lain mungkin ada. Contoh Ruby hanya menghasilkan 8 karakter.
Juga...
- Panjang program dapat dari 1 hingga 4096 karakter.
- Program ini mungkin tidak mengandung tab, baris baru, atau ASCII yang tidak dapat dicetak (karena tidak ada dalam kisi).
- Program harus berjalan dan keluar tanpa kesalahan.
- Tidak ada batasan waktu atau kompleksitas selama program pada akhirnya akan berakhir dengan output yang terbatas.
- Kisi tidak berputar dari kiri ke kanan atau atas ke bawah.
Harap sebutkan di mana program Anda muncul di kisi sehingga kami dapat dengan cepat memverifikasi bahwa itu benar-benar ada.
sumber
yes
, misalnya.Jawaban:
CJam, lebih dari (81182737 ^ 2813292) ↑↑ (10604499373-1) chars
Oke saya pikir saya akhirnya menyelesaikan semuanya. Ini menyenangkan - muncul dengan kode itu seperti menavigasi ladang ranjau.
Sebelum kita menyelam, mari kita mulai dengan contoh yang lebih sederhana ( coba online ):
h
adalah loop do-while yang meninggalkan kondisi pada stack, dan{}
merupakan blok kode. Blok dalam adalah:Misalkan bagian atas tumpukan adalah
[1 10]
dan kami melakukan do-while{(\5*\}h;
. Inilah yang terjadi:Ini terjadi sampai 10 pengurangan sampai ke 0 dan loop berakhir, pada titik mana kita berakhir dengan
[5^10 0]
di atas tumpukan. Kita kemudian dapat menggunakan;
untuk memunculkan nol, meninggalkan[5^10]
.Dengan kata lain kita baru saja melakukan eksponensial, dengan
[1 x]{(\5*\}h;
hasil[5^x]
.Blok luar
{(\1\{(\5*\}h;\}h;
mirip, tetapi alih-alih5*
di tengah kita memiliki loop "basis eksponensial 5" kami. Jadi untuk contoh sederhana kami, dimulai dengan[1 3]
kita dapatkan:Bagian atas adalah nol, jadi kami menghentikan loop dan pop, pergi
[5^5^5]
. Dengan kata lain, kita buat5^5^5
, atau5↑↑3
di notasi panah Knuth . Anda dapat mengganti 5 dan 3 untuk nomor lain tetapi hiperexponentiasi menjadi besar dengan cepat , jadi saya tidak akan merekomendasikan memilih yang terlalu besar.Sekarang untuk yang asli:
(Jejak jejak)
Beranotasi (apa pun tanpa catatan adalah pengisi):
Ini pada dasarnya sama dengan contoh sederhana, hanya dengan banyak pengisi saat menavigasi dari satu instruksi ke instruksi lainnya di grid.
Alih-alih 5 dan 3 yang kita miliki
81182737^2813292
dan10604499373
, artinya(81182737^2813292)↑↑10604499373
dikeluarkan pada akhirnya (diberi cukup waktu dan memori, tentu saja!). Perhatikan bahwa ini hanyalah batas bawah - ada banyak pencetakan lain yang terjadi, misalnya dengan 6 dan 3 output lebih dari 2 juta karakter, meskipun6^6^6
hanya memiliki 36 ribu digit.Jika Anda ingin mencoba versi lengkap ini untuk diri sendiri, uji dengan:
mengganti 5 dan 3 pada baris kedua dan keempat dengan nomor pilihan Anda. Perhatikan bahwa output akan memiliki beberapa digit tambahan di sekitar angka hyperexponentiated penting (yaitu pendahulu
010
dan trailing0
).Beberapa catatan tentang CJam
Anda mungkin bertanya-tanya: mengapa tidak menggunakan eksponensial inbuilt CJam (
#
) alih-alih loop do-while dalam? Sayangnya, setelah menggali melalui sumber CJam, saya belajar bahwa untuk exponentiation, base dapat menjadi BigInt (arbitrary precision) tetapi eksponen dikonversikan ke int 32-bit normal . Ini memiliki beberapa efek samping yang lucu, tetapi menjengkelkan:Ini berarti bahwa saya tidak bisa menggunakan eksponen bawaan CJam ketika eksponen terlalu besar, untuk alasan melimpah. Namun, multiplikasi berbeda karena mengalikan dua BigInts menghasilkan BigInt baru, jadi saya memutuskan untuk mengeksploitasinya.
sumber
TECO, ~ 2 ^ 31 * 13 ~ = 27.9 * 10 ^ 9
Sunting: Mengubah beberapa karakter karena saya secara tidak sengaja menggunakannya kembali, tetapi bagian itu ada di dalam komentar sehingga tidak ada banyak perbedaan.
Perintah
?
turn on echoing, yang saya gunakan untuk membuat sebagian besar output. Kemudian karakter\RZK%B"s'1UC>
dicetak dalam satu lingkaran.%B"s
menambahkan satu ke B dan kemudian menguji apakah kurang dari nol. Dengan demikian, persyaratan ini harus dimasukkan setelah 2 ^ 31 siklus ketika melimpah ke angka negatif. Di dalam kondisional adaEX
perintah yang keluar dari program.Saat ini saya mencoba menjalankannya sampai selesai dengan output diarahkan ke file.
sumber
HQ9 + (17195 karakter)
Sumber:
(mulai dari 5: 4 dan kemudian turun)
Keluaran:
Teks untuk lagu "99 botol bir" (8596 karakter), string
9Q9
(3 karakter) dan salinan lain "99 botol bir" (8596 karakter).Ini adalah jawaban yang sangat timpang dan Anda tidak perlu membatalkannya, tetapi seseorang harus mempostingnya.
sumber