cat <<'X' #include "stdio.h" #include "stdlib.h" typedef struct { double v@ int id@ } E@ int cmp(const void *aa,const void *bb){ E *a=(E*)aa@ E *b=(E*)bb@ if(a->v > b->v) return 1@ if(b->v > a->v) return -1@ return 0@ } int lexless(int m1,int m2){ int c1=__builtin_popcount(m1), c2=__builtin_popcount(m2)@ if(c1!=c2) return c2>c1@ int i=0@ while(i!=20){ int x=(m1>>i)&1, y=(m2>>i)&1@ if(x!=y) return x@ ++i@ } return 0@ } X