![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
一本通
A_Pathfinder
这个作者很懒,什么都没留下…
展开
-
一本通-> 提高篇-> 图论-> 强联通分量
一本通:提高篇:图论:强联通分量:1513:【 例 1】受欢迎的牛受欢迎的奶牛只有可能是图中唯一的出度为零的强连通分量中的所有奶牛,所以若出现两个以上出度为0的强连通分量则不存在明星奶牛,因为那几个出度为零的分量的爱慕无法传递出去。那唯一的分量能受到其他分量的爱慕同时在分量内相互传递,所以该分量中的所有奶牛都是明星。#include<bits/stdc++.h>using...原创 2020-01-05 19:08:18 · 897 阅读 · 0 评论 -
1553:【例 2】暗的连锁 树上差分
题目链接:http://ybt.ssoier.cn:8088/problem_show.php?pid=1553差分能够更好的解决区间问题。在讲树上差分之前,首先需要知道树的以下两个性质:(1)任意两个节点之间有且只有一条路径。(2)根节点确定时,一个节点只有一个父亲节点这两个性质都很容易证明。那么我们知道,如果假设我们要考虑的是从u到v的路径,u与v的lca是a,那么很明显,如果路径中...原创 2019-09-19 20:31:53 · 765 阅读 · 0 评论 -
1496:【例 3】架设电话线
传送门这里给出3种方法求解(因为感觉都蛮有用的)。第一种:dp+最短路dp[i][j]:从1号点到i号点已经用了j次变成0边后路径上的最长边.若有一跳从u到v长度为w的边,则 d[v][num] = max(d[u][num],w);用dis[u][num] 更新dis[v][num+1]的最小值分别更新:d[v][num] = max(d[u][num],w);...原创 2019-09-05 19:52:37 · 1238 阅读 · 0 评论 -
1495:【例 2】孤岛营救问题
传送门 //因为一本通上有一个测试点错了,所以给洛谷的测试这题大部分都是用bfs + 状压去做,但是一本通里把这题放在了最短路上,虽然用最短路的时间空间都比bfs要差,但是这是一道很好的去训练分层最短路的题。BFS版:bfs把每个种类的钥匙都单独分成一层,然后根据我拿了钥匙的状态去找到我现在应该在的层,再bfs搜索最短路。#include<bits/stdc++.h>...原创 2019-09-04 14:07:06 · 1240 阅读 · 0 评论 -
一本通->提高篇->图论-> 最小生成树:
一本通:提高篇:图论:最小生成树:1486 【例题1】黑暗城堡求最短路径生成树,用最短路算法求出最短路后,找到最后dis数组,遍历每条边上找到对应成立dis[]的度数(个数),再用乘法原理求出结果。#include<bits/stdc++.h>using namespace std;typedef long long ll;//const ll mod = (1<...原创 2019-09-26 18:35:14 · 998 阅读 · 0 评论 -
P3469 [POI2008]BLO-Blockade
传送门题目大意:Byteotia 城市有 n 个城镇,m条双向道路。每条道路连接两个不同的城镇,没有重复的道路,所有城镇连通。输出 n个数,代表如果把第 i 个点去掉,将有多少对点不能互通。这是一道求割点的经典题目,需要好好分析一下结果是怎么得来的。首先我们要明确一点,这里如果(1,3)两点不能互通,那么(3,1)也是不能互通的,即得出来不能互通的点需要乘2。还有一个注意点是我们去...原创 2019-10-09 11:14:15 · 459 阅读 · 0 评论 -
一本通->提高篇->图论->割点和桥:
一本通:提高篇:图论:割点和桥:1520:【 例 1】分离的路径题意:如何把有桥图通过加边变成边双连通分量如果叶子数(缩点后度为1的点)为1,则至少需要添加0条边;否则为(叶子数+1)/ 2;#include<bits/stdc++.h>using namespace std;const int N = 2e5+100;int n,m,cnt=1; //cnt从1...原创 2019-10-10 21:36:56 · 767 阅读 · 0 评论