Advertisement
Le_BuG63

Untitled

Apr 19th, 2014
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 3.52 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4. #define r char S; T R; I N, G, s
  5. #define A(P,O) for(P=O; *P; P=U(P))
  6. typedef char T[128],*I,p[2400];
  7. #define memset  (I)\
  8.         memset  
  9. void*P= strcpy  ; I Q(); typedef const void*f; int u(f P,f O){
  10.  return strncmp ((I)P,(I)O,1); } T g,c={ 127} ; char l,F[6000000]; I U(I P){
  11.      r; strncpy (R,P,2);
  12.      s= strchr  (
  13.         strcpy  (P,c),0)
  14.       ; strncpy (P,R,2); return s; } T q,B,E; I t(I P){
  15.      r; qsort   (P,
  16.         strlen  (P),1,u);
  17.   if(s= strstr  (P,c))*s=0; return P; } T a={ 2} ; void D(){ r;
  18.    S=1; strcpy  (R,c); t(F);
  19.   for(; memset  (E,S,l),
  20.     (S= strlen  (
  21.         strcat  (R,c)))<*R; t(s))for(s=B;
  22.      N= strstr  (F,E); s=F)
  23.       * memset  (N,*c,l)=S; } p H="(*&,.",k; I j(I P){
  24.   r=(I) malloc  (
  25.         strlen  (
  26.         strcat  (P,"\177 ")));
  27.       * strstr  (P,c)=0;
  28.  return strcpy  (s,P); } int K(f P,f O){ return u(O,P); } void
  29.    b(){ qsort   (F,
  30.         strlen  (F),1,K); } void n(I P){ r; A(P,P){
  31.   if(N= strchr  (F,*P)); else{ t(F);
  32.    b(); memset  (B,l,*F); N=F;
  33. while(* strrchr (B,l)=0,
  34. *P<=(S= strlen  (B))){
  35.       * memset  (E,S,l)
  36.    =*c; strcat  (F,E);
  37.       } memset  (B,0,S); } *N=*c; } D(); } void C(I P,I O){ r; A(P,P)A(s,O){
  38.       * strrchr (
  39.         memset  (
  40.         strchr  (
  41.         memset  (
  42.         strncpy (k,B,254),l,*P),0),l,*s),l)=0;
  43.     *q= strlen  (k)
  44.       ; strcat  (F,q); } D(); } T i="\13<\f="; void o(I P){ A(P,P){
  45.       * strrchr (
  46.         memset  (B,*c,*P),*c)
  47.     =0; memset  (B,0,
  48.     *P= strlen  (B)); } } int V(f P,f O){ return u(*(I*)P,*(I*)O); } void e(I O){
  49.      r; strcpy  (H,O)
  50.       ; strcpy  (R,c); for(;
  51.      0< strncmp (F,H,1)
  52.       ; strcat  (R,c))A(s,
  53.      H) memset  (B,0,
  54.     *s= strlen  (
  55.         strcat  (
  56.         memset  (B,*c,*s),c))); *k=0; do{ while
  57.    (0<= strcmp  (F,H)){ n(H); b();
  58.     *q= strlen  (R)
  59.       ; strcat  (k,q); }
  60.       * strrchr (R,*c)=*B; o(H); } while(*R); } char d(I P){
  61.   if(P= strstr  (P,g)){
  62. if((*g= getchar ())<*i)' '<*g?o(g):d(" "); } else P=B; return*P; } I m(I
  63.     P){ qsort   (P,
  64.         strlen  (P),1,K); return*P==*c?U(P):P; } void J(I P){ r=m(P);
  65. if(P<s) putchar ('-')
  66.       ; memset  (B,l,*s); do{ *E=*i;
  67.   if(N= strchr  (s,
  68.     *q= strlen  (B)))
  69.      t( memset  (
  70.         memcpy  (E,i,l),*c,
  71.         strspn  (N,q)))
  72.       ; putchar (*E);
  73.       * strrchr (B,*B=l)=0; } while
  74.   (*B); puts    (B)
  75.       ; free    (P); } I M(){ r=Q(),P,O; while(S=d(".)$")){ N=Q();
  76.      G= strcpy  (F,B); P=m(s); O=m(N); if(S==')'){ C(P,O); }
  77.   else{ strcpy  (F,P); e(O); if(S=='.')G=k; else O=N;
  78.       } free    (s); G=j(G);
  79.      s= strcat  (G,P==s==(O==N)?B:c)
  80.       ; free    (N); } return s; } I h(){ r,P,O; for(N=M(); S=d("*,");
  81.      N= strcat  (s,S?c:B)){ G=M(); P=m(N); O=m(G); S=O==G==(S==','); if(P==N==S)
  82.     if( strcmp  (P,O)<0)
  83.       { strcpy  (F,O); n(P); }
  84.   else{ strcpy  (F,P); n(O); S=N<P; }
  85.   else{ strcat  (
  86.         strcpy  (F,P),O); D(); }
  87. s=j(F); free    (N)
  88.       ; free    (G); } return N; } I Q(){ r; if(S=d(","))
  89.   if(N= strstr  (s=Q(),c))*N=*B;
  90.    else strcat  (s,c); else if(d("'")){ s=h(); S=d("("); }
  91.   else{ strcpy  (F,B); while(*q=d(i))
  92.       { strcpy  (H,F)
  93.       ; memset  (
  94.         strncpy (F,B,l),S=1,
  95.         strcspn (i,q)); C(H,a); } s=j(F); } if(!S){
  96.      o( strcpy  (F,"tzouby!fssps"))
  97.       ; puts    (F); } return s; } int main(int P,I*O)
  98.       { qsort   (O,P,sizeof*O,V);
  99.  l=1<P? strtol  (*O,0,l):10; C(H,
  100.     i); strcpy  (i,F); d(g); while(!d("\377"))for(J(h()); !d("\377\n"); d(g)); return 0; }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement