Floyd() 1 #include<bits/stdc++.h> 2 using namespace std; 3 4 const int N = ???; 5 const int INF = 0x3f3f3f3f; 6 int n, m; 7 int a, b, x; 8 int dis[N][ ...
分类:
其他好文 时间:
2020-02-05 11:44:17
阅读次数:
47
1.0 Floyd(),简单粗暴,三重循环遍历,可求多源两点距离,但毕竟复杂度高,不适合过大的图。 2.0 Bellman(),借用一个(存放起点u、终点v、权值w的)结构体edge,遍历次数取决于边的个数*节点个数n,将复杂的三重循环,缩小到O(nm)的复杂度。 2.1 在Bellman()的基础 ...
分类:
其他好文 时间:
2020-02-01 21:14:27
阅读次数:
58
地址 https://www.acwing.com/problem/content/description/855/ 给定一个n个点m条边的有向图,图中可能存在重边和自环, 边权可能为负数。 请你求出从1号点到n号点的最多经过k条边的最短距离,如果无法从1号点走到n号点,输出impossible。 ...
T1 表演 给你一幅既带点权又带边权的无向图 点权表示在这个点完成任务的花费 求从每个点出发到某一个点完成任务再回来的最小花费 解法 最短路模板, $dis$ 数组初始赋为点权,然后边权全部乘 $2$ ac代码 T3 跳一跳 给你一个数组 $A$ ,求它最长的满足奇数项小于两边的偶数项或偶数项小于两 ...
分类:
其他好文 时间:
2019-11-15 14:27:07
阅读次数:
55
原创建时间:2017 12 30 21:05:19 简单的SPFA最短路模板,适用于图的边权有负数的情况。 算法实现: 我们用数组d记录每个结点的最短路径估计值,而且用邻接表来存储图G。运用动态逼近法:设立一个先进先出的队列用来保存待优化的结点,优化时每次取出队首结点u,并且用u点当前的最短路径估计 ...
分类:
其他好文 时间:
2019-10-26 20:41:22
阅读次数:
111
题目 : 题意 :n个点m条有权边,求s到t的最小费用,可以让你免费通行最多k条边 思路 :分层最短路模板题,跑dijkstra,用dis[i][j]表示到i点且已经免费通行了j条边的最小花费 include using namespace std; typedef long long LL; co ...
分类:
其他好文 时间:
2019-10-06 20:42:50
阅读次数:
128
题目描述 明明暑假来济南旅游旅游,他打算游玩N个旅游景点,N-1条双向连接的道路将它们联通起来,每一条道路有固定长度。一开始明明位于1号景点。现在希望你能够求出旅行长度最小的方案,使得每个景点至少被访问到一次。 输入 第一行两个整数N,代表景点数目。接下来N-1行,每行三个整数s, t, w,表示有 ...
分类:
其他好文 时间:
2019-01-22 20:13:34
阅读次数:
232
<题目链接> 题目大意: 现在给你一些点,这些点之间存在一些有向边,每条边都有对应的边权,有一次机会能够使某条边的边权变为原来的1/2,求从起点到终点的最短距离。 解题分析: 分层图最短路模板题,由于最多只能将一条边变成原来的1/2,所以我们在原来二维的图形上多加一层,由第一层到第二层的边代表该边边 ...
分类:
其他好文 时间:
2018-09-24 23:23:53
阅读次数:
245
题目链接:http://poj.org/problem?id=2387 题意:有n个城市点,m条边,求n到1的最短路径。n<=1000; m<=2000 就是一个标准的最短路模板。 ...
分类:
其他好文 时间:
2018-08-18 11:33:58
阅读次数:
152
【题目描述】 平面上有n个点(n≤100),每个点的坐标均在-10000~10000之间。其中的一些点之间有连线。若有连线,则表示可从一个点到达另一个点,即两点间有通路,通路的距离为两点间的直线距离。现在的任务是找出从一点到另一点之间的最短路径。 【题目链接】 http://ybt.ssoier.c ...
分类:
其他好文 时间:
2018-08-06 00:34:11
阅读次数:
174