随笔分类 - STL
摘要:给定一张图。三种操作:
1. 加入某条边,边权。
2. 删除新加入的第条边。
3. 将新加入的第条边的边权改为。
每次操作后,输出当前所有经过1号点的环的最大价值。环的价值为所有边的异或和,可重复走过边且其边权计算多次。
。
阅读全文
摘要:无摘要..
阅读全文
摘要:
阅读全文

摘要:给定两个字符串S和T,求T在S中出现了几次,以及分别在哪些位置出现。T中可能有'?'字符,这个字符可以匹配任何字符。
阅读全文
摘要:"题目链接" 五维偏序,对每一维维护bitset,表示哪儿为1(比它大),然后5个bitset与起来就能得到答案了。 具体实现可以用5\ n个bitset,按排名搞个前缀和。 复杂度(本质是暴力的优化)。 cpp //1284ms 565MB include include in
阅读全文
摘要:"BZOJ" "洛谷" 删掉的数即三个区间数的并,想到bitset;查多个区间的数,想到莫队。 考虑bitset的每一位如何对应每个数的不同出现次数。只要离散化后不去重,每次记录time就可以了。 但是如果对所有询问开一个bitset会MLE。但是我们可以开M个bitset,每次处理M次询问。 注意
阅读全文
摘要:[TOC] Codeforces 1025 "比赛链接" 为什么我room里的都不hack别人。。那么明显的错。。 A.Doggo Recoloring B.Weakened Common Divisor 任意一对总要有个满足的,任找一对分解质因数就可以了。 分解质因数的过程很zz。。不用筛直接枚举
阅读全文
摘要:..........
阅读全文
摘要:"题目链接" "后缀数组做法见这" 。 直接SAM+map。对于每个节点其产生的不同子串数为len[i] len[fa[i]]。 cpp //15932kb 676ms include include include include // define gc() getchar() define M
阅读全文
摘要:SAM求字符串的最小循环表示。
阅读全文
摘要:"题目链接" 从哪个点出发最短路径都是一样的(最后都要回来)。 脑补一下,最短路应该是按照DFS的顺序,依次访问、回溯遍历所有点,然后再回到起点。 即按DFS序排序后,Ans=dis(p1,p2)+dis(p2,p3)+...+dis(pk,p1)。每次修改一个点,用set维护即可。 int dis
阅读全文
摘要:"题目链接" m个方程,n个未知量,求解异或方程组。 复杂度比较高,需要借助bitset压位。 感觉自己以前写的(异或)高斯消元是假的。。而且黄学长的写法都不需要回代。 cpp //1100kb 324ms include include include include const int N=10
阅读全文
摘要:"题目链接" 先缩点,对于scc之间贡献即为szscc[i] szscc[j] 用f[i][j]表示scci是否能到sccj 拓扑排序,每次把now的f或上to的f 用bitset优化 cpp //63888kb 1080ms include include include include defi
阅读全文
摘要:"题目链接" cpp / 求异或和,容易想到,如果同一个数异或偶数次相当于0 ∑ai还不大,那想一下每个子集和出现多少次,显然只需要知道次数的奇偶,可以用bitset bit[i]=0/1表示子集和为i出现了偶数次/奇数次 有个简单的dp方程: f[x+a[i]]+=f[x] 对于一个x,bit(注
阅读全文