We we move 1988-2004 entries from all of a year's winning entries in a single directory to each winner being in their own sub-directory under the given year directory.
62 lines
791 B
C
62 lines
791 B
C
#define c m[m[0]++] =
|
|
#define z;break;case
|
|
|
|
char s[5000];
|
|
int m[20000]={32},L=1,I,T[500],*S=T,t=64,w,f;
|
|
|
|
a(x)
|
|
{
|
|
c L;
|
|
L= *m-1;
|
|
c t;
|
|
c x;
|
|
scanf("%s",s+t);
|
|
t+=strlen(s+t)+1;
|
|
}
|
|
|
|
r(x)
|
|
{
|
|
switch(m[x++]){
|
|
z 5: for(w=scanf("%s",s)<1?exit(0),0:L;strcmp(s,&s[m[w+1]]);w=m[w]);
|
|
w-1 ? r(w+2) : (c 2,c atoi(s))
|
|
z 12: I=m[m[1]--]
|
|
z 15: f=S[-f]
|
|
z 1: c x
|
|
z 9: f *=* S--
|
|
z 7: m[f]= *S--;
|
|
f= *S--
|
|
z 0: *++S=f;
|
|
f=m[I++]
|
|
z 8: f= *S --- f
|
|
z 2: m[++m[1]]=I;
|
|
I=x
|
|
z 11: f=0>f
|
|
z 4: *m-=2;c 2
|
|
z 6: f=m[f]
|
|
z 10: f= *S--/f
|
|
z 3: a(1);
|
|
c 2
|
|
z 13: putchar(f);
|
|
f= *S--
|
|
z 14: *++S=f;
|
|
f=getchar();
|
|
}
|
|
}
|
|
|
|
main()
|
|
{
|
|
a(3);
|
|
a(4);
|
|
a(1);
|
|
w= *m;
|
|
c 5;
|
|
c 2;
|
|
I= *m;
|
|
c w;
|
|
c I-1;
|
|
for(w=6;w<16;)
|
|
a(1),c w++;
|
|
m[1]= *m;
|
|
for(*m+=512;;r(m[I++]));
|
|
}
|