home *** CD-ROM | disk | FTP | other *** search
- typedef struct n{int a:3,
- b:29;struct n*c;}t;t*
- f();r(){}m(u)t*u;{t*w,*z;
- z=u->c,q(z),u->b=z->b*10,
- w=u->c=f(),w->a=1,w->c=z->
- c;}t*k;g(u)t*u;{t*z,*v,*p,
- *x;z=u->c,q(z),u->b=z->b,v
- =z->c,z->a=2,x=z->c=f(),x
- ->a=3,x->b=2,p=x->c=f(),p
- ->c=f(),p->c->a=1,p->c->c=
- v;}int i;h(u)t*u;{t*z,*v,*
- w;int c,e;z=u->c,v=z->c,q(
- v),c=u->b,e=v->b,u->b=z->b
- ,z->a=3,z->b=c+1,e+9>=c&&(
- q(z),e=z->b,u->b+=e/c,w=f(
- ),w->b=e%c,w->c=z->c,u->c=
- w);}int(*y[4])()={r,m,g,h};
- char *sbrk();main(){t*e,*p,*o;
- o=f(),o->c=o,o->b=1,e=f(),
- e->a=2,p=e->c=f(),p->b=2,
- p->c=o,q(e),e=e->c,(void)write
- (1,"2.",2);for(;;e=e->c){q(e),
- e->b=write(1,&e->b["0123456789"],
- 1);}}t*f(){return i||(i=1000,
- k=(t*)sbrk(i*sizeof(t))),k+--i;
- }q(p)t*p;{(*y[p->a])(p);}
-