-
-
Notifications
You must be signed in to change notification settings - Fork 102
Expand file tree
/
Copy pathprog.c
More file actions
32 lines (29 loc) · 1.4 KB
/
Copy pathprog.c
File metadata and controls
32 lines (29 loc) · 1.4 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#define A 1000
#define B long int
#include <stdio.h>
#define C(a,b) if(l(*v)==a){n+=b;}
#define D(a,b) C(a,0;m+=n*o*b;n=0;)
#define E(a) m+=n*o;f[i++]=j(m,1);o=1;m=n=0;a
#define F(a) for(;g^A&&a>>2<=f[g].d>>2;)f[i++]=f[g++];f[--g]=j(a,0);
typedef struct{int b;B d;}e;e f[A];B m,n,o,r,s,h,i,g=
A;e j(B q,int x){return(e){.b=x,.d=q};}int l(char*u){
for(r=/*-------------------------------------*/1,s=0;
u[s];r/* nine thousand and one */>>=1,r
^=u[ s/*-------------------------------------*/++] );
return(r&15)|(s^*u)<<4&240;}int main(int z,char **v){
for(o=1;*++v;){C(16,0;E(F(5)))D(90,A*A*A)C(106,7)C(52
,40)C(/* 7 */223/* 8 */,18/* 9 */)C(/* + */31,15)
C(165,/*----*/9)C/*----*/(1*/*----*/121/*----*/,2)C(+
40,5)C(113,10)C(56,11)C(111,19)C(45,12)C(238,14)C(0,6
)C(47,/* 4 */4)C/* 5 */(1*/* 6 */206/* - */,13)C(
49,50)/*----*/C(+/*----*/55,/*----*/0;E/*----*/(F(6))
)C(130,90)C(175,17)C(2,8)C(17,3)C(103,60)D(202,A*A*A*
A)D(1*/* 1 */192/* 2 */,A)/* 3 */C(+/* x */65,70)
C(137,/*----*/0;E/*----*/(F(/*----*/2))/*----*/)C(110
,0;o=-1)C(39,30)C(201,1)C(242,n*99)C(78,16)D(170,A*A)
C(76,0/* 0 */;E(/* = */F(1/* % */)))/* / */C(232,
0;E(F(/*----*/7))/*----*/)C(/*----*/48,/*----*/+80)C(
+32,20)}E()for(;g^A;f[i++]=f[g++])continue;for(;h^i;)
if(f[h].b)f[--g]=f[h++];else n=f[g++].d,o=f[g++].d,m=
f[h++].d,f[--g]=m^1?m^2?m^5?m^6?j(o%n,1):j(o/n,1):j(n
*o,1*1*1):j(o-n,1):j(n+o,+1);printf("%ld\n",f[g].d);}