
图论
W.A.R
热爱敲代码(划掉)的低级代码狗缓慢level up ing!!!!
展开
-
【牛客7872 L】吃火锅-超级源点跑单源最短路-浙江农林大学第十九届程序设计竞赛暨天梯赛选拔赛(同步赛)
【牛客7872 L】吃火锅-超级源点跑单源最短路-浙江农林大学第十九届程序设计竞赛暨天梯赛选拔赛(同步赛)传送门链接:https://ac.nowcoder.com/acm/contest/7872/L来源:牛客网题目描述有n个城市,m条双向道路。每条道路连接连接俩个城市,经过道路需要交路费。第i条路线可用于从城市vi到城市ui(以及从ui到vi),并且使用该路线需要花费wi。每个城市都开了一个相同的火锅店,但是由于位置不同,每家火锅店的价格不同,为了简化问题。假设到第i个店吃的花费是val[i]原创 2020-11-01 22:19:31 · 301 阅读 · 0 评论 -
【牛客7872 J】树上启发式合并
【牛客7872 J】树上启发式合并题意树上启发式合并,求有多少点对满足,这两个点x和y相互之间不是祖先和后代的关系同时满足val[x]+val[y]=2∗val[lca(x,y)]val[x]+val[y]=2 * val[ lca(x,y) ]val[x]+val[y]=2∗val[lca(x,y)]题解根据两个点不能互为祖先的要求可知:比较可行的方式是枚举这个作为lca的结点,对于一个作为lca的结点什么样的结点会以它为lca呢,当然是以它的不同的儿子为根结点的子树中的结点因此,统计答案原创 2020-10-31 21:51:11 · 135 阅读 · 0 评论 -
【牛客7872 C变强的秘药】dp
【牛客7872 C变强的秘药】dp传送门题意给n个数,按这个n个数给出的顺序取数,每一次至少取k个数,每一次取数的收益是取的序列后三个数之积 - 前三个数之积。例如我本次取a[1]~a[10],我能得到的收益是a[10] * a[9] * a[8] - a[1] * a[2] * a[3]。求怎么取能获得最大收益?题解dp[i]代表以 i 为取的某一次的右端点时,答案的最大值是多少。那么我们求的就是dp[n],因为显而易见n一定是某一次取的右端点。考虑这个答案是由几部分组成的是由3部分组成的,原创 2020-10-31 10:26:17 · 128 阅读 · 0 评论 -
【2020小米网络选拔赛D Router Mesh】Tarjan求每个点属于哪几个点双连通分量
【2020小米网络选拔赛D Router Mesh Tarjan求每个点属于哪几个点双连通分量】求删掉一个点后的连通块个数,对每个点进行一次询问传送门题意给一个无向图,对每一个结点做一个询问,询问为,若删掉该点(及所有与其相关的连边),整个图有几个连通块?题解用Tarjan算法的思路来写,dfn[i]代表结点 i 的dfs序,low[i]代表从结点 i dfs下去能到达的dfn值最小的结点的dfn值。若u为当前结点,v为一个u的未被访问过的子节点,若对 v dfs完毕后,得到 low[v] <原创 2020-10-25 19:09:12 · 290 阅读 · 1 评论