main()1int main() 2 { 3 unsigned long long table[256]; 4 unsigned int i; 5 for (i=0; i<256; ++i) { 6 unsigned long long j; 7 unsigned char x=i; 8 for (j=0; j<5; ++j) { 9 x += x<<1; 10 x ^= x>>1; 11 } 12 for (j=0; j<5; ++j) { 13 x += x<<1; 14 x ^= x>>1; 15 } 16 for (j=0; j<5; ++j) { 17 x += x<<1; 18 x ^= x>>1; 19 } 20 for (j=0; j<5; ++j) { 21 x += x<<1; 22 x ^= x>>1; 23 } 24 for (j=0; j<5; ++j) { 25 x += x<<1; 26 x ^= x>>1; 27 } 28 table[i] ^= (((unsigned long long)x)<<16); 29 } 30 for (i=0; i<256; ++i) { 31 if ((table[i]&0xff)==i) 32 return 1; 33 } 34 return 0; 35 } 36 37