bitset用法讲解

1.定义申请

代码 说明
bitset<100> cp[100]; 定义一个二进制数组
bitset<100> cp 定义一个二进制数
bitset<100> b(s, pos, 100); 从s的pos位置开始复制100个数到b
queue< bitset<100> >cp; 定义一个保存二进制数的队列

2.运算符操作

bitset<100>a, b. c;
int num;
代码 说明
a=b|c 将b和c记录的状态整合到a
a=b&c 将b和c的公共部分整合到a
a=~b 按位取反
a = num 赋值:把num的二进制数保存到a中
a[I] = num 位赋值;num等于0时a[I]为0,num为正为负,a[I]为1

3.常用操作

bitset<100>a, b. c;
int num;
代码 说明
a.count() 返回a中1的个数
a.size() 返回a的长度
a.test(pos) 如果a的pos位为1,则返回1;反之返回0;
a.to_ulong() 返回二进制数a转化成的long形的十进制数
a.reset() 将a的每一位置0
a.reset(pos) 将pos位置的数置为0

4.用处
可以用于状态压缩,集合的压缩,决策的枚举;

5.例题

[拓扑排序] 可达性统计

bitset用法讲解相关推荐

  1. 位运算 进制转化 STL中bitset用法

    2017-08-17 16:27:29 writer:pprp /* 题目名称:输入十进制以二进制显示 程序说明:同上 作者:pprp 备注:无 日期:2017/8/17 */ #include &l ...

  2. pythonlower函数_python中lower函数实现方法及用法讲解

    之前小编介绍过python中将字符串小写字符转为大写的upper函数的使用方法(upper函数).有将小写转为大写的需要,那也有将大写转为小写的情况.本文主要介绍在python中可以将字符串大写自摸转 ...

  3. python中的set和dict_Python中dict和set的用法讲解

    dict Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度. 举个例子,假设要根据同学的名字 ...

  4. python列表split_Python-split()函数实例用法讲解

    在Python中,split() 方法可以实现将一个字符串按照指定的分隔符切分成多个子串,这些子串会被保存到列表中(不包含分隔符),作为方法的返回值反馈回来. split函数用法 split(sep= ...

  5. isnull mysql_mysql isnull用法讲解

    mysql isnull用法讲解 MySQL 可以使用 ISNULL() 函数.不过它的工作方式与微软的 ISNULL() 函数有点不同. 我们先来看几个is null sql用法: select * ...

  6. linux文件权限umask,linux系统中UMASK权限的用法讲解

    原标题:linux系统中UMASK权限的用法讲解 umask一般是用在你初始创建一个目录或者文件的时候赋予他们的权限. 这里要说明两点: 1.针对目录来说x权限代表可以进入该目录,所以说对于这个权限初 ...

  7. 6s在c语言中的用法,C语言中assert的用法讲解

    assert是指编写代码时做出一些假设,断言就是用于在代码中捕捉这些假设,可以将断言看作是异常处理的一种高级形式.下面是小编为大家整理的C语言assert的用法讲解,欢迎参考~ assert宏的原型定 ...

  8. MySQL中replace主键_Mysql中replace与replace into的用法讲解

    Mysql replace与replace into都是经常会用到的功能:replace其实是做了一次update操作,而不是先delete再insert:而replace into其实与insert ...

  9. oracle中col 的用法,Oracle中的SUM用法讲解,

    Oracle中的SUM用法讲解, Oracle中的SUM条件查询 1.按照区域编码分组查询区域编码.IPTV_NBR不为空的数量.ACC_NBR不为空的数量.所有用户数量 SELECT AREA_CO ...

最新文章

  1. 监听UIWebView点击视频播放的事件
  2. Word组件 Spire.Doc for .NET V6.0.3发布 | 修复多个重大bug
  3. 关于长寿_FreeCodeCamp可以帮助您更长寿
  4. java集合框架05——ArrayList和LinkedList的区别
  5. HALCON:Optical Flow(光流)
  6. 2016学计算机软件,2016年夏季学期计算机(软件)学院学年论文字数、页数和格式要求.doc...
  7. 【渝粤教育】国家开放大学2018年春季 0471-22T畜牧学 参考试题
  8. windows2003配置ftp服务器
  9. 微信小程序静态页面的实现
  10. 创作的第一个智能婚恋系统源代码,类似于百合网。
  11. macbook双系统怎么装mysql_mac装win10双系统的方法_如何安装macos苹果和win10双系统...
  12. 彩色图像加密matlab算法,彩色图像混沌加密算法
  13. 技术支持快递第6 期
  14. 【设计模式】结构型模式之代理模式
  15. 【java】输入一个整数判断它是偶数还是奇数
  16. System has not been booted with systemd as init system (PID 1). Can‘t operat
  17. FLAC文件格式详解
  18. 安装了迅雷却无法下载的解决方法
  19. 网易图灵学院python公开课_图灵学院 Python全系列教程全栈工程师 python视频教程下载...
  20. 如何考评一名前端工程师?

热门文章

  1. 【JS】快速入门DOM
  2. android游戏手柄,没手柄也不怕 键盘玩Android游戏攻略
  3. Python3基础--18--数据库编程(上)
  4. 关于永磁同步电机d-q轴定子电压方程中反电势项的符号问题。
  5. Java同步之synchronized
  6. 刷题学习—算法思想(双指针、排序、回溯、二分法、滑动窗口、贪心、单调栈)
  7. 1 面向对象设计模式与原则
  8. FileReader的编码问题
  9. 计算机网络基础选择题
  10. 7.3 有源滤波电路(2)