Floyd算法 弗洛伊德算法,用来计算多源最短路径(任意两个点之间的最短路径) 符号描述 D(i,j) 节点i到节点j的最短距离 N(i,j) 节点i到节点j的下一跳节点 思维 1. 如果某个节点位于起点到终点的最短路径上 D(i,j)=D(i,k)+D(k,j) 2. 如果某个节点不位于起点到终点 ...
分类:
编程语言 时间:
2020-05-03 12:25:28
阅读次数:
59
题意: n个点m条边的图,起点为1,终点为n,每一条单向边输入格式为: a,b,c //从a点到b点耗时为c 题目问你最多从起点1到终点n能经过多少个不同的点,且总耗时小于等于t 题解: 这道题我原本以为是改一下最短路去做,,,但是想不到怎么写。网上搜了搜,发现是拓扑+dp。 拓扑排序有啥用? 比如 ...
分类:
编程语言 时间:
2020-05-02 12:15:25
阅读次数:
63
1 // 2 // Created by Arc on 2020/4/26. 3 // 4 5 /* 6 * 城市交通线路,单向通行,道路之间可能有不通,每条连同的路之间都有相应的费用 7 * 求从起点到终点的最小费用 8 * 9 * 需要一个a[n][n]数组存放每条路的费用,不连同就为0(给不连 ...
分类:
其他好文 时间:
2020-04-27 09:44:21
阅读次数:
48
题目传送门 这是一道很好的练习强联通的题目。 首先,从题中可以看到,题目的要求就是要我们求出从起点到终点是否可以经过flag = 1 的边。 由于是无向图,且要求很多,直接暴力dfs会很凌乱。 那么,我们就想到一个思路:能不能尽量把这张图缩小,标记转为点,最好成为一条一条链呢? tarjan的缩点! ...
分类:
其他好文 时间:
2020-04-04 22:41:10
阅读次数:
102
题目链接 http://codeforces.com/problemset/problem/1292/A 大意 有一个$2×n$的迷宫,每次可以让一个块不能通过,问每次修改后是否可以从起点到终点/ 分析1 先说说我的想法,暴力的话$O(NM)$,时限是$1.5s$,好像是差不多,但是一般卡着时间效率 ...
分类:
其他好文 时间:
2020-04-04 21:06:31
阅读次数:
93
前言 复习一下迪杰斯特拉算法,由于最小生成树的Prim算法与迪杰斯特拉算法极其类似,再顺便复习下最小生成树,顺便找两道水题验证代码正确性。 迪杰斯特拉算法 目的 该算法用于单源最短路,求一个图中,从起点S,到终点E的最短路径 思路 算法基于贪心思想,简单来讲就是两步: 找出起点距离其他点的最短距离中 ...
分类:
编程语言 时间:
2020-03-17 08:33:20
阅读次数:
87
大致题意就是给出一个图、每个顶点的点权、顶点之间的边权、起点和终点。求出从起点到终点的最短路径的数量、以及最短路径上的最大点权之和。 这是一道模板题,要先记住大体流程,然后反复练习,较难头疼。。。 1 #include<iostream> 2 using namespace std; 3 4 con ...
分类:
编程语言 时间:
2020-03-07 21:00:27
阅读次数:
81
给定一个无向图,一条路径被称为最短路,当且仅当不存在从它的起点到终点的另外一条路径总长度比它小。两条最短路不同,当且仅当它们包含的道路序列不同。我们需要对每条道路的重要性进行评估,评估方式为计算有多少条不同的最短路经过该道路。$n\leq 1500,m\leq 5000,w\leq 10000$ S ...
分类:
编程语言 时间:
2020-03-01 10:54:29
阅读次数:
65
题目:https://vjudge.net/problem/CodeForces-1292A 题意:共两行,从(1,1)到(2,n)每过一个时刻会有一个位置的状态变化,从能到达这个位置变成不能到达,或从不能到达变成能到达,问在每个时刻中是否能从起点到终点。 分析:对于某一行的一个障碍,要形成阻碍,必 ...
分类:
其他好文 时间:
2020-02-24 20:21:57
阅读次数:
63
A - 畅通工程续 某省自从实行了很多年的畅通工程计划后,终于修建了很多路。不过路多了也不好,每次要从一个城镇到另一个城镇时,都有许多种道路方案可以选择,而某些方案要比另一些方案行走的距离要短很多。这让行人很困扰。现在,已知起点和终点,请你计算出要从起点到终点,最短需要行走多少距离。 Input本题 ...
分类:
其他好文 时间:
2020-01-28 19:09:49
阅读次数:
72