-
-
Notifications
You must be signed in to change notification settings - Fork 100
Expand file tree
/
Copy pathprog.c
More file actions
14 lines (10 loc) · 4.88 KB
/
Copy pathprog.c
File metadata and controls
14 lines (10 loc) · 4.88 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include<stdlib.h>
#include<stdio.h>
#include<fcntl.h>
#define P 1<<24
#define Z while(
#define W for(i=0;i<K;i++)
#define A *Q++
typedef int _;
char*Q = "8 {} o; ({ #} U{t * ;1} &x;_; k}rI}6{Y}O{{ p{} O}}A Z} x o{ >} W{ } V{ q{ .}t; n{{ P{U{m;; >; }{&;{ { e{ g} }{ w o { R};_{1;6}N}7{ (V{6} G;E}3} k{Y}T}4}Y; C{ {[5;S; L J{ s;,} {@{ [{ c;5; J{ m; D}g{*{ ^; ec; w;T;D; {W}1;I; a} {@*{y}l .}D{: a}{ & v} ] }w b{ }; x{ z} g}H}#;%;v2{ n} [{&; n;U}a} ; ; H}Yc F{; m =}W; V};i{}f}c;H} {l{ p; b}_;v} H{ `{{ r;w}3{X;C;O} O} B}z} { b{ d;V{8 }, }9} d{*{ a{ Jb{t{${ ;6{}@}- e{q{W}}B{ e; ; }0{ -;x}}Q; } x{ L~} J} Sn}{/ G;X; y{9}UY} 7}#d{e;l; ?{} ^{M}{ S} K; +{ .{r{ z}Vu;} O{[;8{}g} C{ U;a{={$ m}{}_} { 8} o} Z{ u;=;c; ;Q;G; H^}X; M{ 6{[ '{ /;1} g; E} ;[{ v{?;c; }; -P 3{ V } @} >;}52}c{ YF} ^[;z; R{a} `{V~} =} r 3}p}{[g;)} R -;4} g{{ z}^;}V; b 1}n} F; R;{s;l}{c; E${u}o} e; @} ,} ';S; = :[{ D}4};}} 1;2{ ^{A{w !} n}2} 5{8}z{ &;o; I} u}{ ]; A}s; S;9 { 3;T;p;9;=}d G , M}iw{ }X} 8;;}{ }Ew} { =l ?{ u ,} ;k{ 1}N; ]} 3{1{{>}c; Q}M i{ I{.{ o}L{ ?@}@{2; Y;O -> K} .{V; X}D; < E} ; 5{ /{ ;;a{ & ;P{}{p{Z{} X }+; q; 9|{z;y 7} g{G;I{ O{ ; ^}(} _:} }h G A{;{-{ ~}} a{ u{ )} 7{Y{ L}; /; m[;b{W |; ]} & h;; } &}_} ;Y} 3 8{*; S;} O{0w;0{ :; `{ D{3{ y{ ae{ N; *{t} }X}aB});{ x{ #;{ }; J ; 8} }{2; .; } E;W};{&{{ b{Y; ^; ; h : +} C{}j}=; d{ Q}N;;N{ )4 ={ q{f}D;p} 2}% K} }LY{ b{ W RK{ F; w1f{ J{ |;n} E}; ; t; O;L;{.9} <; B{F ; 0{ w; b{&}l; { 9{Q{ } K}; E;; {9 W;C}_{ 9 o; o{p} % Z;} QZ; 6 Q} I{ {p}s} } } _} b{ {v{ q{X;[{%} J )E; ;V} P} t{ {{p P ; B}R{E.0{ !}h;7 x} 8}`;C}s{x ;D;x; %{ w}; s$ ; y *;j{}{{{{8X; G{4w; t e{) ?}{{x;5; {*}}/}F 5}| s}E;&} j w{s C{ } n{ t}Z; {2;+}s ^} { _; {} *{k} S; , v2{ q; 5 }a}m{ }0; { }!}; N} ;8K { W}W; qO{C{ o{e}+ p} =; ;<;W{; V pP} %; n} ;{}$J} } V{s; v{ B; ,8; j; 1{]{; <; I} Q} ; q} 3{ /{7{H}{ r{ A}{;); O{ 3{ 2 L{d 6{J{ Z;5; { V{;{q; B{u}+D; @ 5 s % { >;} z{ q} #} W}d}}} 9{ `}+{C},;I za{m; -}E}}]N{d} #} U} .{} { N;7{w G b; }} k } E{ ({L{} D{ |{)}>G;}{ {t}=} f} ;X}) b;>}h} ;;;} ?(;=; G;m u0; }U; A;u} Y} ; d}{2;p; V.} E}; ;^},} { {;F}4} ; Y; z;>} <{O;y{ K{ ;){ n{ 2}q ^l.; 5F ;6;; K} (;t;a{ C Z}T; p{ yt{K{g;5} ; _{ ; ={}N{; f{} S;^;!{C;{ x{ {k{V{/{ *{ D{$} U #{ } `{fa(;R%{ #} 9 e} S<; A};=;K -{ a;@{5 KW 0;T}{(} C; :q{n;{{${ ,} }A{ '{ _i; } 4; ; ~} q})}> ~;/;0;O;} F}A D{;/{G{ @; U} _{ Z [; N{E;~ z;`{ {Z}{ Y{r $} 0G} m ";
_ i,q[P],B[P],R[P],l[9],*z,K,I,m[P],p,D=1968,S,n,g,*t[P],k[P],c,e,E,*u,y,F; char T[P],*v; long C=1; _*w(_*Q){ _ N,*f=Q,*o,p; Z(N=A)<9){ _ a=(z-B)/4,b=0; o=Q-1; if(N<6){ *z=N; K=1+(N>1)+(N>4); W{ I=A; N=z[i+1]=I<2e5?a-I:m[I=I-2e5]; if(N)t[N][k[N]++]=a; } z+=4; } else if(N^7){ I=A; K=A; W m[i]=a+=A; K=P; W R[i]=q[i]; w(R+l[I]); } else{ a=0; I=--A; p=K=A; if(I){ W{ b+=Q[p]; f[a+=A]+=b; } Q=f; } else Q+=p*2; } f=o; } return Q; } _ s(_ O){ if(C<D){ C*=D; p*=D; K=A; p+=(K-1-(K>10)-(K>13)-(K>34)-(K>92))<<4; K=A; p+=K<33?(K^8)*2%5:(K^6)%3*4+(A^8)*2%5+4; } _*x=B+O*2; K=C*-~*x/(*x+x[1]+2); I=p>=K; p-=K*I; C=I?C-K:K; x[I]++; return I; } _ h(_ K,_ O){ _ g=1<<K,f=1; O*=99; Z!s(++K+O)){}; K--; W f=f*2|s(O); return f-g; } void d(_ H,_ O){ for(p=0; p<H; p++){ K=1<<O; W B[g++*4+1]=R[i]>>p&1; } } _ main(_ x,char**O){ if(x<2)exit(42); fcntl(0,4,O_NONBLOCK); _*Q=q,K,i,j=h(9,0); Z j--){ if(s(1)){ z=Q-h(4,2)-1; K=h(1,3)+1; W A=*z++; } else A=(1-2*s(8))*h(3,9); } Q=q; K=S=A; v=T+A; n=A; W t[i]=malloc(7e4); K=A; W l[i]=A; I=A; z=B; Q=w(q+I); g=A; FILE*J=fopen(O[1],"r"); K=4096; W R[i]=fgetc(J); d(8,12); g=A; K=16; W{ j=256; Z j--)R[j]=Q[j*16+i]; d(6,8); } u=Q+4096; unsigned long*f=calloc(S,16),G; Z 1){ _ r,M=0,g,*Q; Z M<S){ K=3; Z K--){ I=1<<6*K; g=M/I; G=f[y+S/64*K+g/64]>>g%64; Z G&1){ M=M-M%I+I; G/=2; K=0; } } Q=B+M*4; r=A; i=T[A]; K=T[A]; I=T[A]; p=T[M]; T[M]=r<2?i^r:r<4?r^3?i|K:i&K:r^5?i^K:i?K:I; if(p^T[M]){ I=k[M]; Z I--){ g=t[M][I]; K=3; W f[(y^S*(g<=M))+S/64*i+(g>>6*-~i)]&=~(1L<<(g>>6*i)%64); } } M++; } K=S/16; W f[y+i]=-1L; y^=S; { char*Q=v; if(A){ F|=A; K=A; I=!A; E+=I&!K; if(K&I&A){ K=18; putchar(32+F*13); W putchar(u[i*18+*(_*)(T+n+((i+3)%18-(i>15))*21)%18]); F=0; puts(""); } } if(E-c>128){ c=E;e=!e;I=e?0:u[325+getchar()];K=8;W A=I>>i&1;}}}}