摘要:
一场考试让我成了自( xin )闭( tai )症( bao )患( zha )者 说起来这次的题还真是让人丧心病狂,第一题只有8个人AC,最高分没上200分,这真的是csp s模拟赛吗 。 T1总结: 我总结出的性质: 1. 最优的一对CP不一定在全局最优解中。 1. 若不考虑可攻可受的人的存在, 阅读全文
摘要:
算法思路就不说了,其实比较简单 这里讲一下坑点: 1.虽然我们可以将边权压到点上,但是当根不同时,差分数组显然不同。所以我们不能真的将边权看做点权,换根时还是要将其当做边权来考虑。 1.更新时,我们设dp[u]表示u节点为根时的最大价值,由于经过点u后,点v的儿子将变成点u,所以此时我们要更新点v的 阅读全文
摘要:
一道类似康拓展开的数学题,结合了字符串的考点 这是题解的下载链接 "click here" 难点在于如何判断字符串是由哪些单词组成的,正解是字典树,也可以hash,用map能拿90分,手写hash表可以AC 这里给出map代码和手写hash代码 STL map c include using nam 阅读全文
摘要:
注意,若负直径指广义的直径——可以缩成一个点,树形DP无法正确求出,需要将初值设为0(若大于0则不更新) 阅读全文
摘要:
```c void dfs(int u,int fa){ f[u]=f2[u]=g[u]=g2[u]=0; for(int i=head[u];i+1;i=e[i].nxt){ int v=e[i].v,w=e[i].w; if(v==fa) continue; dfs(v,u); if(f[v]+ 阅读全文
摘要:
吉司机最经典的应用,区间最值更新 "HDU 5306" 其中对最大值和次大值及其个数的维护方式值得学习 阅读全文
摘要:
线段树/标记永久化 复杂度 $O(nlogn)$ 题解有误,并非所有与线段树节点[l,r]相交的所有区间[s.t]都要存入vector 插入区间[s,t]时,我们覆盖了一段完整的区间,如图 实质上是覆盖了表面的一层,即标记不下传 故我们merge时要考虑每一层的vector 插入时,如果两个区间恰好 阅读全文
摘要:
Dfs+剪枝 保证正确性 复杂度:$O(玄学)$ 此题标签是计算几何,可以极角排序然后DP,然而我因为想练搜索写了这份代码 对于每一个点,我们枚举它在哪一个矩形中。即对于每一个点,可以创建一个新矩阵储存它,也可以用旧的矩阵储存它。我们可以用vector来储存每个矩形中的点,当矩形中的点确定,矩形的大 阅读全文
摘要:
"click here" 注意必须从2开始递推,好像1不满足这个性质 阅读全文
摘要:
费用流 好题 推荐这篇博客 "click here" 注意此题如果不用动态开点的话10000的数组是不够的的,会RE 因此网络流推荐动态开点更方便(原来都是手算的) 阅读全文