一、
x=x&(x-1)
效果:删去最右端的一个1
用途:可用来计算一个二进制数中1的个数
二、
x^y
效果:异或,相同为1,反之为0。即1001^0000=0110。
三、
for(int i=1;i<1<<n;i++)
for(int j=i;j;j=(j-1)&i)
用途:可用来枚举状态二进制i的子集j与i^j
一、
x=x&(x-1)
效果:删去最右端的一个1
用途:可用来计算一个二进制数中1的个数
二、
x^y
效果:异或,相同为1,反之为0。即1001^0000=0110。
三、
for(int i=1;i<1<<n;i++)
for(int j=i;j;j=(j-1)&i)
用途:可用来枚举状态二进制i的子集j与i^j