带权拟阵交
摘要:
带权拟阵交板题 2023HDU多校3 1006 注意带权拟阵交是指在最大交的前提下的最大权值的交。 #include<cstdio> #include<vector> #include<algorithm> #include<bits/stdc++.h> using namespace std; t
贪心构造题目
摘要:
CF83C 枚举可能的 264种经过的集合方案,算一下到(n,m)的可达性,然后从(1,1)开始贪心即可。 CF1738F 每次找一个度数最大的点,遍历所有出边,如果邻居被遍历过,那么把当前集合加入邻居的集合,否则把邻居加入当前集合。 (这个真的有2400吗) CF1208F 这种只有
对dijkstra算法的再思考
摘要:
这篇文章的起因是这道题。本题的题解中提到了广义dij这个东西。我个人的理解是dij只是一个模板,只要能完成其中的关键性质,那么跑的东西可以不是最短路。 考虑最短路dij的正确性到底是基于什么的:在每次把dis最小的点加入当前集合时,我们可以断言这个点不会再被其他点松弛。在最短路中这一点很好证明:其他
一些值得记录的小tips
摘要:
multiset 的erase如果喂val会将指定val的所有元素删掉,如果只想删一个那么是 S_of_dp.erase(S_of_dp.find(x));。 如果不确定操作的合法性: auto it=SET.find('b'); if(it!=SET.end()) SET.erase(it); X
2019ICPC银川C
摘要:
先考虑暴力dp:设 dp_{i} 表示前 i 个的最小划分代价。 dp_{i}=min_{1\leq j\leq i-k}max(dp_{j},diff[j+1,i]) 然后如果把 dp_{j} 换成 min(dp[j,i-k]),这个式子仍然是正确的,因为对
PAM+回文串border理论
摘要:
PAM板子 #include <bits/stdc++.h> using namespace std; const int maxn = 300000 + 5; namespace pam { int sz, tot, last; int cnt[maxn], ch[maxn][26], len[m
excrt
摘要:
EXCRT 为了契合整个系统,定义 \gcd(x,0)=x。 欧几里得算法 证明 gcd(a,b)=gcd(b,a\ mod \ b): gcd(a,b)|gcd(b,a\ mod \ b): \[a\ mod \ b=a-kb\\ gcd(a,b)|a\\ gcd(a,b)
计数题目总结
摘要:
## [WC2019 数树](https://www.cnblogs.com/thedreammaker/p/13160328.html) ## [P4463 国家集训队 calc](https://www.cnblogs.com/thedreammaker/p/11160829.html)
字符串题目总结
摘要:
cmdoi2019 口头禅 广义后缀自动机串定位 #include<bits/stdc++.h> using namespace std; const int L=3e5+5; struct yuansu { int ch[26]; int len,fa,self_ch,val; yuansu()
内容目录
摘要:
about me 流水账 训练记录 codeforces训练 区域赛真题 牛客杭电多校 bjfu集训口胡 知识点/板子/习题总结 图论 单源最短路 最小生成树 tarjan/2-sat 对dijkstra算法的再思考 DP DP题目总结 浅谈一类转移带有数据结构操作特征的DP的优化 字符串 字符串题