随笔分类 - 题解
主要发布一些洛谷或codeforces上的题解
摘要:思路: $\quad$说实话,第一眼看这题想到的是线段树,但无奈 $1<=n<=10^ 9$ ,离散化有点复杂,动态开点又不会,所以使用了一种离线做法,跑的还贼快(大雾 $\quad$现将所有操作存起来, \(dir\) 表示方向, $1$ 为上, $0$ 为左,然后按 \(x\) 为第一关键字,
阅读全文
摘要:思路: $\quad$这是一道数学题,分别计算每一个点分别作个位,十位... \(n-k\) 位的贡献即可(不可做这一数位的数的这一数位的贡献为 $0$ ),如字符串 $9876543210$ 中 $0$ 只可以作个位, $1$ 只可以作个位和十位,其他数位的贡献为 $0$ ,所以可以得到 \(an
阅读全文
摘要:思路: $\quad$只需要以题目给定的 \(u\) 为起点跑一遍 \(Dijkstra\) 最短路即可,每次记录每个点的前驱(即到达这个点的边),注意有多个可以选择的边中选择边权最小的,感觉很像一个最小生成树,最后记得要记录树上的边权并排序再输出,起点 \(u\) 是没有前驱的,所以要从 $2$
阅读全文
摘要:思路: $\quad$对于此题考虑使用线段树维护,因为有环,所以断环为链,数组开两倍,另外距离换成坐标(距离的前缀和),假设最后求的两棵树分别为 \(x\) , \(y\) \((dis_x<dis_y)\),那么答案就是 $2\times (h_x+h_y)+dis_y-dis_x$ ,就是 \(
阅读全文
摘要:\(\text{关于本题}\) \(\quad\) \(Dsu\) \(on\) $Tree$模板题,没有做过的可以做做CF600E Lomsat gelral,也是一道模板题,下面就简单讲讲树上启发式合并 (\(DSU\) \(on\) \(Tree\))算法,如果有不懂的可以提出来。 $\qua
阅读全文
摘要:\(\text{CF246E Blood Cousins Return}\) $\quad$题目链接:CF246E Blood Cousins Return(洛谷的链接) $\quad$一道 \(Dcu\) 模板题(下面会讲),只需要用一个 \(map\) 数组来维护这个名字(字符串)是否出现过,用
阅读全文
摘要:\(\text{CF375D Tree and Queries}\) $\quad$题目链接:CF375D Tree and Queries(洛谷的链接) 思路 $\quad$标准做法是动态规划,但看到 $4.5s$ 的时限,似乎可以树上启发式合并水过去,只要用 \(num_i\) 和 \(cnt_
阅读全文
摘要:\(\text{CF1009F Dominant Indices}\) $\quad$题目链接:CF1009F Dominant Indices(洛谷的链接) $\quad$没有修改操作,询问子树,这就是一道 Dsu 板子题,这个算法又叫树上启发式合并(下面会细讲)。 $\quad$关于此题,用 \
阅读全文
摘要:\(\text{CF741D Arpa’s letter-marked tree and Mehrdad’s Dokhtar-kosh paths}\) $\quad$题目链接:CF741D Arpa’s letter-marked tree and Mehrdad’s Dokhtar-kosh p
阅读全文
摘要:\(\text{前言}\) $\quad$可以看看我的一篇blog关于树链剖分"换根操作"笔记(内容都差不多) $\quad$另外洛谷上还有一道关于换根操作的题目:P3979 【遥远的国度】(我的题解) \(\text{关于题目要求的操作}\) $\quad$其实可以发现在一棵树中,只有父亲(祖先)
阅读全文
摘要:\(\text{前言}\) $\quad$可以看看我的一篇blog关于树链剖分"换根操作"笔记(内容都差不多) $\quad$另外洛谷上还有一道关于换根操作的题目:CF916E Jamie and Tree(我的题解) \(\text{关于题目要求的操作}\) 换根,直接换即可 路径修改,就和普通树
阅读全文
摘要:\(\text{关于题意}\) $\quad$一道很简单毒瘤的树链剖分练习题,只有五种操作,除了码量较大,就没有什么其他特点了,是一道很好的练习题。可以锻炼$OIer$找错能力,我调了一个小时, $WA$了一次 \(\text{关于边权转点权}\) $\quad$有几道题也是树链剖分边权转点权,可以
阅读全文
摘要:\(\text{题目大意}\) $\quad$给出一个有向图,求所有点到起点的距离之和,起点到所有点的距离之和的和。(起点就是$1$)有点绕口 $\quad$虽然$SPFA$已经死了,但还是值得一用的,对于这道题考虑使用$SPFA$求最短路。 $\quad$根据题意,我们可以开二维数组,第一层存正图
阅读全文
摘要:$\quad$前置芝士:Tarjan缩点,建议做做模板题(P3387 【模板】缩点) \(\text{关于题意}\) $\quad$给定一个有向图,求要使一个点 \(t\) 能够到达其他所有点还需加多少边? $\quad$因为在一个强连通分量中,每个点都可以到达其他所有点,所以考虑缩点,将一个强连通
阅读全文
摘要:\(\text{题目大意}\) $\quad$给出一个有向图,求所有点到起点的距离之和,起点到所有点的距离之和的和。(起点就是$1$)有点绕口 $\quad$虽然$SPFA$已经死了,但还是值得一用的,对于这道题考虑使用$SPFA$求最短路。 $\quad$根据题意,我们可以开二维数组,第一层存正图
阅读全文
摘要:\(\text{关于题意}\) $\quad$因为点i能保护j的条件是i可以到达j且j可以返回i,这不就是强连通分量的定义吗?所以考虑缩点,将每个强连通分量缩成一个点,缩点后每个强连通分量中只需取一个点,所以记录每个强连通分量中最小点权及其数量,最后最低成本就是每个强连通分量最小点权之和,方案数是最
阅读全文
摘要:\(\text{关于题意}\) $\quad$一道很简单的树剖题,只有三种操作(其实是两种),唯一要考虑的点是如何将边权转化成点权,考虑到每个点都有且只有一个父亲节点(除根节点1之外),那么我们就可以将父亲与儿子连接的边权记录到儿子身上,这样 \(n-1\) 条边就可以合理的分配到 \(n-1\)
阅读全文
摘要:\(\text{关于题意}\) $\quad$一道很简单的树剖题,只有三种操作(其实是两种),唯一要考虑的点是如何将边权转化成点权,考虑到每个点都有且只有一个父亲节点(除根节点1之外),那么我们就可以将父亲与儿子连接的边权记录到儿子身上,这样 \(n-1\) 条边就可以合理的分配到 \(n-1\)
阅读全文
摘要:\(\text{求连通块数量,首先想到二维并查集}\) $\quad$与其它并查集不同,在棋盘上需要二维并查集,用一维数组f记录每个坐标的祖先,用二维数组记录每个点的颜色。(1表示白点,2表示黑点) $\quad$二维并查集一般采用压缩成一维的方法,将坐标为$(x,y)$的点记录为 \((x-1)\
阅读全文

浙公网安备 33010602011771号