/* foo.c: gcc -Wall -o foo foo.c * Copyright(c) 2006 wangcong. All rights reserved. */ #include #include #include #define _O_O_(x) x*x #define p__(s) {fprintf(stderr,(s));return -1;} #define T_T(x) x;x;x;x #define _0_0_(y) printf(y) #define _0__0(m,q,r) m(q(r)) static void inline s(int *a, int *b){int m;m=*a,*a=*b,*b=m;} void p(int*,int);int l1l1=0x0;int main(int argc, char* argv[]){ int _=(int)((unsigned char)'\x1')<<8,__=(int)2["hi"],o0o0='-'-'-',*n,*f;if(argc!=2)p__("Bad usage!\n") l1l1=atoi(argv[1]);_0__0(if,NULL==,n=_0__0(malloc,_O_O_(l1l1)*sizeof,int))p__("No memory!\n") _0__0(if,NULL==,f=_0__0(malloc,_O_O_(l1l1)*sizeof,int)){free(n);p__("No memory!\n")} _0__0(srand,time,NULL);for(_=0;_<_O_O_(l1l1);n[_]=_+1,f[_]=0,_++); for(_=0;_<_O_O_(l1l1);__=_0__0((int),_O_O_(l1l1)*,rand()/(RAND_MAX+1.0)),s(&n[_],&n[__]),_++); p(n,_O_O_(l1l1));for(_=0;_<_O_O_(l1l1);f[_]=((n[_]==_+1)?0:1),_++); for(o0o0=0,_=0;_