1.将一个数左移n位,就相当于乘以了2的n次方(eg:2<<3相当于2*8)
2.对于A << B,表示把A转化为二进制后向左移动B位(在末尾添加B个0)。
对于A >> B,表示把A转化为二进制后向右移动B位(删除末尾的B位)。
3.01枚举
for (int i = 0; i < (1<<n); ++i)
{
for (int j = 0; j < n;++j)
//从0开始,到n-1,一共n位;查看每一位是0还是1
{
if ((i&(1<<j))==1)
// 这里判断二进制 i 从右数第 j + 1 位是否为 1
}
}