什么是BitSet BitSet类实现了一组位或标记(flag),这些位可被分别设置或清除。当需要跟踪一组布尔值时,这种类很有用。 您只需让每一位对应一个值,并根据需要设置或清除即可。 标记(flag)是一个布尔值,表示程序中的一组开/关状态之一。 位组 需要表示大量的二进制数据(即只可以为0或1的 ...
分类:
其他好文 时间:
2017-05-06 15:55:14
阅读次数:
175
思路:自己写的第二发二维线段树1A。哈哈,看来对二维的push操作比較了解了;可是还没遇到在两个线段树中同一时候进行push操作的,事实上这题我是想在x维和y维同一时候进行push操作的。可是想了好久不会。然后看到这题又给出10秒,然后想想在x维线段直接单点查询肯定也过了,然后在第二维就仅仅有pus ...
分类:
其他好文 时间:
2017-05-05 21:53:56
阅读次数:
179
1 #include <algorithm> 2 #include <cstring> 3 #include <cstdio> 4 #include <bitset> 5 #include <vector> 6 #include <queue> 7 #include <stack> 8 #inclu ...
分类:
其他好文 时间:
2017-05-03 22:02:35
阅读次数:
195
传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=3687 【题解】 记f[i]为和为i的子集出现了几次。 那么加入一个数x,如果选择,就相当于f整体左移x;不选择就是f。那么异或起来就行了。 用bitset实现。复杂度O(n*2000000/3 ...
分类:
其他好文 时间:
2017-05-01 20:57:07
阅读次数:
147
1,BitSet类 大小可动态改变, 取值为true或false的位集合。用于表示一组布尔标志。 此类实现了一个按需增长的位向量。位 set 的每个组件都有一个 boolean 值。用非负的整数将 BitSet 的位编入索引。可以对每个编入索引的位进行测试、设置或者清除。通过逻辑与、逻辑或和逻辑异或 ...
分类:
编程语言 时间:
2017-04-26 14:36:52
阅读次数:
229
正规题解传送门 : https://zyqn.tech/?p=3163 但是我们发现n只有2000,于是可以建出trie树然后愉快的bitset去搞。 直接对于trie上每个节点开个bitset空间爆炸。但是有很多是重复的,所以我们想虚树一样建,每个节点只存一个link指针。 代码 : #inclu ...
分类:
其他好文 时间:
2017-04-25 23:31:24
阅读次数:
208
C++ 标准库以若干头文件的方式提供。 下面简单介绍一个各头文件的内容。 第一部分 容器 Containers <array> C++11 新增。提供了容器类模板 std::array,固定大小数组的容器。 <bitset> 提供了专门用来存放位组(一系列 bit)的容器类 std::bitset。 ...
分类:
编程语言 时间:
2017-04-25 10:00:43
阅读次数:
168
http://www.lydsy.com/JudgeOnline/problem.php?id=4810 问题就在于怎么快速查询 我们先用莫队转移,但是没办法快速地查询,那么我们就用bitset这个东西快速查询。 cnt是一个权值数组,记录每个数出现次数,a,c是两个bitset 减法:a[i]-a ...
分类:
其他好文 时间:
2017-04-21 20:31:14
阅读次数:
198
来自FallDream的博客,未经允许,请勿转载,谢谢。 n<=2000 bitset优化floyd , 枚举k,枚举i,如果i能到k,那么i的bitset直接或上k的。复杂度$O(\frac{n^{3}}{32})$ ...
分类:
Web程序 时间:
2017-04-19 10:01:02
阅读次数:
202
http://codeforces.com/gym/100283/problem/F 思路是二分第几行,二分出来的行是总和 >= n的,那么第k - 1行一定要选,那么再在第k行中二分那一列、 #include <cstdio> #include <cstdlib> #include <cstrin ...
分类:
其他好文 时间:
2017-04-17 12:29:34
阅读次数:
257