1. poj 2139 题意 奶牛们最近要拍电影了…… 1、若两个的奶牛一起工作则,他们相互的度(degrees)为; 2、若两只奶牛a、b不一起工作,但与另有一只奶牛都和他们工作,则a、b的相互的度为2。 求奶牛的与其他奶牛的度的平均值的100的整数。 思路 这个题用floyd算法最为合适; // ...
分类:
其他好文 时间:
2020-05-10 01:15:22
阅读次数:
56
这题竟然没有题解,那我就来发一篇吧。 第一眼看到这题:最小环?什么鬼!用 SPFA 好像很麻烦欸。然后一看数据:$1\leq n\leq 100$。好吧这题用邻接矩阵和 floyd 就能过。 floyd 是一种动态规划求最短路径的方法,代码极短,并且很好理解(代价就是在最短路径算法中无人能敌的 $\ ...
分类:
其他好文 时间:
2020-05-09 20:52:28
阅读次数:
59
Til the Cows Come Home "POJ 2387" 这题是最简单的最短路求解题,主要就是使用dijkstra算法,时间复杂度是$O(n^2)$. 需要注意的是,一定要看清楚题目的输入要求,是先输入边,再输入顶点,一开始我没看清,wrong answer了一次。 ...
分类:
其他好文 时间:
2020-05-09 20:41:51
阅读次数:
53
参考链接 Dijkstra算法 算法特点: 迪科斯彻算法使用了广度优先搜索解决赋权有向图或者无向图的单源最短路径问题,算法最终得到一个最短路径树。该算法常用于路由算法或者作为其他图算法的一个子模块。 算法的思路 Dijkstra算法采用的是一种贪心的策略,声明一个数组dis来保存源点到各个顶点的最短 ...
分类:
其他好文 时间:
2020-05-08 21:21:39
阅读次数:
90
题目链接 分析: 还是很明白的题意,直接分析问题,首先,这一题真的是给spfa用武之地,m比n大不超过20,但是这并不能使暴力不t,我们考虑一下如何改进一下,我们这样想,这个图只比它的生成树多最多21条边,而树上的最短路有是那么的容易(lca),我们可以先求出在树上两个点之间的最短路,可是非树边也很 ...
分类:
其他好文 时间:
2020-05-08 19:52:43
阅读次数:
68
思路 如果考虑暴力建图的方法 对于每一条线路的每一个站点可到达的站点建边 在每条线路有1e5个站点的条件下显然是不现实的 如何解决建图的问题是此题的关键 因为有转车和车费逐步增加的情况存在 很容易想到分层图的概念 通过把路线看作不同的图层 就能把转车的概念转化为层与层之间的转化概念 令图层层数为 0 ...
分类:
其他好文 时间:
2020-05-08 14:41:56
阅读次数:
70
题意: n层图,每个点放在一层,然后给了n个点,相邻的两层距离是固定的c,有额外m条边,然后求1到n的最短路径,如果没有则输出-1 题解: 这道题原来我想着还用1到n表示点,层用n+1到2*n表示,但是这样是不行的,因为这样建图的话就相当于同层之间的距离为0.但是事实证明不是这样的 我按照上面建图就 ...
分类:
其他好文 时间:
2020-05-06 13:44:42
阅读次数:
51
题意: 思路:我们要建图,要考虑两个方面,一个是换线费用,一个是乘到下一站的费用 对于乘到下一站,这个很容易操作,就相邻的点按费用建边就可以 我们考虑这样操作:对于每一条线,都建出点来,即:每一条线上的同一个站点的代号是不一样的 举例如下:假如有n=5,m=5; 那么第一条线有1 2 3 4 5 这 ...
分类:
其他好文 时间:
2020-05-06 12:11:09
阅读次数:
57
"题目链接" 题意 给出$n$个点$m$条边的无向图与$k$个特殊点,要在两个特殊点间添加一条边,求从$1$到$n$最短路的最大值。 题解 $p_i$表示从$1$出发到$i$的最短路,$q_i$表示从$n$出发到$i$的最短路。选择两个特殊点$a$和$b$使$\min(p_a+q_b+1,q_a+p ...
分类:
其他好文 时间:
2020-05-05 23:19:50
阅读次数:
86
看得出题目的直径也就是任意两点之间最短路的最大值,因此这是个多源汇最短路 而连接两个独立的区域,就需要取到最小值,然后跟每个集合的最大值进行取max #include<iostream> #include<string> #include<algorithm> #include<cmath> #de ...