#include<bitset>
bitset容器是一个bit位元素的序列容器,每个元素只占一个bit位,取值为0或1,因而很节省内存空间。
bitset<n> b;
b.any() 是否有1
b.none() 是否无1
b.count() 1的个数
b.size() 大小
b[pos] 访问
b.test(pos) pos处是否为1
b.set() 全置1
b.reset() 全置0
b.reset(pos) 将pos处置0
b.flip() 逐位取反
b.flip(pos) 将pos处取反
b.to_ulong() 返回一个unsigned long值
os << b 将b的位集输出到os流
创建bitset对象:
bitset<100000> b; //一经创建,不得修改大小
设置元素值:
b[3]=1; //第0位是最低位
cout << b[3] << " ";
b.set(); //全部置1
b.set(3, 1); //将位置3置1