原理 改修放区间,答案放叶子的一种分治方法 应用 "二分图" 考虑一个图是二分图当且仅当没有奇环,用扩展域并查集维护 类似线段树的方法,遍历到一个区间就下放完全包含这个区间的边,然后判断是不是二分图 回溯的时候删去影响,所以需要资瓷删除的并查集 "CF918E" 用$bitset$维护每个位置的答案 ...
分类:
其他好文 时间:
2020-03-01 10:53:42
阅读次数:
56
对于一类带有通配符的字符串匹配问题,我们考虑构造匹配函数,通过匹配函数的值来判断匹配的位置。 先考虑一个不带通配符的问题:给定两个字符串$A,B$,判断$B$的哪些位置能与$A$匹配。 除了kmp,我们同样可以考虑构造匹配函数来解决匹配问题,首先将$A$串翻转同时在其末尾补$0$,构造函数$f_i= ...
分类:
其他好文 时间:
2020-03-01 00:11:48
阅读次数:
60
可达? 题目描述 小明有一张N个点M条边的有向无环图,他想知道从每个点出发能够到达的点的数量。N,M≤30000。 输入 第一行两个整数N,M,接下来M行每行两个整数x,y,表示从x到y的一条有向边。 输出 共N行,表示每个点能够到达的点的数量。 样例输入 样例输出 题解 对于节点x和y如果x可以到 ...
分类:
其他好文 时间:
2020-02-29 15:11:07
阅读次数:
73
1、直接用bitset进行 & | ^ 操作,它的效率取决于bitset的长度 长为1e5的bieset进行1e5次 位运算,1s+ 2、any(),none()也与长度有关 长为1e5的bitset进行1e5次,0.8s+ 3、all()取决于里面1的数量,如果全是1的话,根any()差不多 #i ...
分类:
其他好文 时间:
2020-02-13 22:41:33
阅读次数:
82
目录 贪心 搜索 数据结构 栈 队列 优先队列 map vector 树状数组 线段树 其他 bitset 字符串 KMP Trie树 Manecher AC自动机 序列自动机 后缀数组 数论 因数 最小公倍数,最大公因数 质因数 质数 质数判断 质数筛法 快速幂 逆元 中国剩余定理 扩展欧几里得 ...
分类:
其他好文 时间:
2020-02-06 19:37:23
阅读次数:
130
网络流两题。 学习bitset。 圆方树 落谷任务计划下方 ...
分类:
其他好文 时间:
2020-02-01 00:29:32
阅读次数:
55
#include <set> #include <map> #include <deque> #include <queue> #include <stack> #include <cmath> #include <ctime> #include <bitset> #include <cstdio> ...
分类:
其他好文 时间:
2020-01-28 19:16:21
阅读次数:
99
1.cout不支持输出二进制,只支持八进制、十进制、十六进制输出,想输出二进制需要用到bitset 2.每次使用oct、dec、hex之后会将默认输出形式分别改为八进制、十进制、十六进制,而使用 bitset输出二进制后则不会改变 代码如下: 1 #include <iostream> 2 #inc ...
分类:
其他好文 时间:
2020-01-24 10:56:33
阅读次数:
96
"Link" 开一个桶记录每个数字出现过多少次,同时用bitset维护$x$是否出现过。 那么查询是否有两个数的差为$x$就是把bitset右移$x$位然后与自己,如果有位置为$1$那么就说明存在。 查询是否有两个数的和为$x$也可以类似地做,多开一个bitset维护$10^5 x$是否出现过。 查 ...
分类:
其他好文 时间:
2020-01-20 12:58:29
阅读次数:
96
bitset大概就是让你轻松建立一个很长的二进制数来存东西,并提供了快捷的操作和优美的常数。 #include <bitset> bitset <32> b;32为长度 需要引用头文件,定义一个bitset。 stl的东西,所以从0开始。 支持左右移。 支持下标访问修改。 b.any() b中是否存 ...
分类:
其他好文 时间:
2020-01-20 10:03:08
阅读次数:
107