Cada caractere neste bloco de texto de 64 por 64 foi escolhido aleatoriamente e uniformemente entre os 95 caracteres ASCII imprimíveis .
/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+;
Sua tarefa neste desafio não é escrever seu próprio código, mas extrair o código desse bloco de texto como se fosse uma enorme grade do Boggle e você estiver procurando por um programa executável em vez de uma palavra.
A submissão com o programa que produz a maior saída finita vence.
Detalhes
Trate a grade de 64 por 64 exatamente como uma grade do Boggle de 64 por 64 com caracteres adicionais. Construa uma sequência que seja um programa executável em algum idioma, escolhendo um local inicial na grade e movendo repetidamente um passo na vertical, horizontal ou diagonal (total de 8 direções) quantas vezes desejar. Você NÃO pode usar o mesmo espaço de grade mais de uma vez!
Por exemplo, essas 4 linhas foram obtidas perto do meio do bloco de texto:
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
Começando com a p
extremidade direita próxima da terceira linha, posso passar para a diagonalmente para baixo e para a direita, depois para a
"
direita, depois para cima 3 vezes zK
e depois para a esquerda 4 vezes #3x"
. Isso rastreia a string p " zK#3x"
que, quando executada como um programa Ruby, é exibida " zK#3x"
.
O objetivo é encontrar um programa que produza a maior saída finita . Somente caracteres ASCII imprimíveis são considerados ao contar o comprimento da saída (isso significa que guias e novas linhas não são contadas), embora outros caracteres possam estar presentes. O exemplo do Ruby produz apenas 8 caracteres.
Além disso...
- O programa pode ter de 1 a 4096 caracteres.
- O programa pode não conter guias, novas linhas ou ASCII não imprimível (pois não estão na grade).
- O programa deve executar e sair sem erros.
- Não há restrições de tempo ou complexidade, desde que o programa acabe com uma saída finita.
- A grade não gira da esquerda para a direita ou de cima para baixo.
Mencione onde seu programa aparece na grade para que possamos verificar rapidamente se realmente está lá.
fonte
yes
, por exemplo.Respostas:
CJam, mais (81182737 ^ 2813292) ↑↑ (10604499373-1) caracteres
Ok, acho que finalmente resolvi tudo. Isso foi divertido - criar o código era como navegar em um campo minado.
Antes de nos aprofundarmos, vamos começar com um exemplo mais simples ( experimente online ):
h
é um loop do-while que deixa a condição na pilha e{}
são blocos de código. O bloco interno é:Suponha que o topo da pilha esteja
[1 10]
e realizamos o tempo de espera{(\5*\}h;
. Isto é o que acontece:Isso acontece até que os 10 diminuam até 0 e o loop termina; nesse ponto, acabamos
[5^10 0]
no topo da pilha. Podemos então usar;
para estourar o zero, saindo[5^10]
.Em outras palavras, acabamos de realizar exponenciação,
[1 x]{(\5*\}h;
resultando em[5^x]
.O bloco externo
{(\1\{(\5*\}h;\}h;
é semelhante, mas em vez do5*
meio, temos o nosso loop "exponentiate base 5". Portanto, para o nosso exemplo simples, começando por[1 3]
:O topo é zero, então paramos o loop e pop, saindo
[5^5^5]
. Em outras palavras, acabamos de criar5^5^5
, ou5↑↑3
em notação de seta para cima de Knuth . Você pode alternar 5 e 3 para outros números, mas a hiperexponenciação fica grande rapidamente , então eu não recomendaria escolher algo muito grande.Agora, a coisa real:
(Rastreio de caminho)
Anotado (qualquer coisa sem anotações é preenchimento):
É basicamente o mesmo que no exemplo simples, apenas com muito preenchimento enquanto navega de uma instrução para outra na grade.
Em vez de 5 e 3, temos
81182737^2813292
e10604499373
, significando que(81182737^2813292)↑↑10604499373
é gerado no final (dado tempo e memória suficientes, é claro!). Observe que isso é apenas um limite inferior - há muitas outras impressões que ocorrem, por exemplo, com 6 e 3, a saída tem mais de 2 milhões de caracteres, embora6^6^6
tenha apenas 36 mil dígitos.Se você quiser experimentar esta versão completa, teste com:
substituindo os 5 e 3 na segunda e quarta linhas pelos números de sua escolha. Observe que a saída terá alguns dígitos extras em torno do número hiperexponentiado importante (ou seja, um precedente
010
e um final0
).Algumas notas sobre CJam
Você pode estar se perguntando: por que não usar a exponenciação incorporada de CJam (
#
) em vez do loop do-while interno? Infelizmente, depois de pesquisar na fonte do CJam, aprendi que, para exponenciação, a base pode ser um BigInt (precisão arbitrária), mas o expoente é convertido em um int normal de 32 bits . Isso tem alguns efeitos colaterais divertidos, mas irritantes:Isso significava que eu não poderia usar a expoente incorporada do CJam quando o expoente é muito grande, por razões de estouro. No entanto, a multiplicação é diferente, pois multiplicar dois BigInts resulta em um novo BigInt, então decidi explorar isso.
fonte
TECO, ~ 2 ^ 31 * 13 ~ = 27,9 * 10 ^ 9
Editar: Alterei alguns caracteres porque acidentalmente reutilizei um, mas essa parte estava dentro de um comentário para que não faça muita diferença.
As
?
voltas sobre eco de comando, que eu uso para criar maior parte da produção. Em seguida, os caracteres\RZK%B"s'1UC>
são impressos em um loop.%B"s
adiciona um a B e depois testa se é menor que zero. Portanto, essa condicional deve ser inserida após 2 ^ 31 ciclos quando ela exceder para um número negativo. Dentro do condicional existe umEX
comando que sai do programa.Atualmente, estou tentando executá-lo até a conclusão com a saída direcionada para um arquivo.
fonte
HQ9 + (17195 caracteres)
Fonte:
(começa às 5: 4 e depois desce)
Saída:
O texto da música "99 garrafas de cerveja" (8596 caracteres), a sequência
9Q9
(3 caracteres) e outra cópia de "99 garrafas de cerveja" (8596 caracteres).Esta é uma resposta muito fraca e você não deve votar novamente, mas alguém teve que postá-la.
fonte