Skip to content

Instantly share code, notes, and snippets.

@vindir
Created November 24, 2020 10:34
Show Gist options
  • Save vindir/c123bbf9bd0aa79a746d865553887d36 to your computer and use it in GitHub Desktop.
Save vindir/c123bbf9bd0aa79a746d865553887d36 to your computer and use it in GitHub Desktop.
#!/usr/bin/perl
# Copyright (c) Marcus Post, <marcus@marcuspost.com>
# # # #
$_=q,my(@f|@c|x$_=q.my(@f|@c|x$_=q.my(@f|@c|x$_=q.m(@f||@c|x$_=q.m(@f||@c|xx
@w);@a=@f=<DAT%@w);@a=@f=<DAT%@w);@a=@f=<DAT%@w;@a=@f=<DAAT%@w;@a=@f=<DAAT%%
A>;seek(DATA|0!A>;seek(DAA|0!!A>;seek(DAA|0!A>;seek(DAA|0!!A>;seek(DAA|0!!AA
|0);@c=<DATA>;Y|0);@c<DATA>;Y||0);@c<DATA>Y||0);@c<DATA>Y|||0);@c<DATA>Y||||
until(($_=pop(zutil(($_==pp(zuttil(($_==p(zuttil(($_==p(zutttil(($_==p(zuttt
@c))=~/^_/){};Qc))=~/^_/){};Qc)))=~/^_/{};Qc)))=~/^_/{};Qc))))=~/^_/{};Qc)))
unshift(@a|$_)xnshift(@a|$_)xnshhift(a|$_)xnshhift(a|$_)xnshhiift(a|$_)xnshh
;for(1..3){pri%;for(1.3){pri%;ffor1.3){pri%;ffor1.3){pri%;ffor11.3){pri%;fff
nt(shift(@c));!nt(shft(@c));!ntt(hft(@c));!ntt(hft(@c));!ntt(hftt(@c));!nttt
}for(@f){my($sY}for@f){my($sY}for@f){my($sY}for@f){my($sY}for@f){mmy($sY}foo
);split//;$_=sz);splt//;$_=sz);splt//;$_=sz);splt//;$_=sz);splt//;$_==sz);ss
hift(@c);$_=~sQhift(c);$_=~sQhift(c);$_=~sQhift(c);$_=~sQhift(c);$_=~sQQhiff
/(.{15}).*/\1/x/(.{15})*/\1/x/(.{15})*/\1/x/(.{15})*/\1/x/(.{15}})*\1/xx/(..
;@w=split//;fo%;@w=split/;fo%;@w=split/;fo%;@w=split/;fo%;@w=spllit;fo%%;@ww
r(@_){$w[$s+15!r(@_){$w[$s15!r(@_){$w[$s15!r(@_){$w[$s15!!(@_){$$w[s15!!!(@@
-$_]=(($w[$s]eY-$_]=(($w[$s]YY-_]=(($w[$s]YY-_]=(($w[$s]YY-_]=((($[$s]]YY-__
q"|")?".":$w[$zq"|")?".":$w[$zq|")?"."::$[$zq|")??."::$[[$z|")???.::$$[[$z||
s]);$s++;}for(Qs]);$s++;}for(Qs];$s++;}}or(Qs];$$s+;}}orr(Qs]$$s++;}}orr(Qss
1..75){unless(x1..75){unless(x1.75){unnlss(x1.775){uulsss(x1.75){uuulsss(x11
$w[$_]ne''){$w%$w[$_]ne''){$w%$w$_]nee''{$w%$$w$_]nn''{{$w%$$w_]nnn''{{$w%$$
[$_]=$w[($_-1)![$_]=$w[($_-1)![$_=$w[[($_-)![$_==w[[($$_-)![$__w[[[($$_-)![[
];}}print(joinY];}}print(joinY];}prinnt(joinY;}prinntt(joinY;}pinnntt(joinYY
""|@w);print"\z""|@w);print"\z""|w);;print"\z"|w);;pprint"\z"|w;;ppprint"\zz
n";}print@a;,;#n";}print@a;.;#n";priint@a;.;#n;priintt@a;.;#n;piinntt@a;.;##
y!|zY\!%x!,Q!;#y!|zY\!%x!.Q!;#y!zY\!!%x!.Q!;#!zY\!!%x!!.Q!;#!z\!!!%x!!.Q!;##
s{Q.*\n}[]g;#<>s{Q.*\n}[]g;#<>sQ.*\nn}[]g;#>sQ.*\nn}[]]g;#>sQ.\nnn}[]]g;#>ss
eval;#EndFini!$eval;#EndFini!$eal;#EEndFin!$eal;;##nddFin!$ea;;###nddFin!$ee
__DATA__
000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000
000000000000110000000110000000000000000011100000000000000000
000000000001110000001110000000000000000111110000000000000000
000000000011110000011110000000000000001111111000000000000000
000000000011110000011110000000000000001111110000000000000000
000000000011110000011110000000000000001111100000000000000000
000001111111111111111111111110000000001111100000000000000000
000011111111111111111111111100000000000111100000000000000000
000111111111111111111111111000000000000111100000000000000000
000000000011110000011110000000000000000111100000000000000000
000000000011110000011110000000000000000111100000000000000000
000000000011110000011110000000000000000111100000000000000000
000000000011110000011110000000000000000011100000000000000000
000001111111111111111111111110000000000011100000000000000000
000011111111111111111111111100000000000011100000000000000000
000111111111111111111111111000000000000001100000000000000000
000000000011110000011110000000000000000001100000000000000000
000000000011110000011110000000000000000001100000000000000000
000000000011110000011110000000000000000000000000000000000000
000000000011100000011100000000000000000000000000000000000000
000000000011000000011000000000000000000011110000000000000000
000000000000000000000000000000000000000111111000000000000000
000000000000000000000000000000000000000111110000000000000000
000000000000000000000000000000000000000011110000000000000000
000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment