【CJOJ P1365】最短路
http://oj.changjun.com.cn/problem/detail/pid/1365
Description
给出N个点,M条无向边的简单图,问所有点对之间的最短路。
Input
第1行两个正整数N,M(N<=100,M<=5000)
下面M行,每行3个正整数x, y, w,为一条连接顶点x与y的边权值为w。(x<=n,y<=n,w<=1000)
Output
包括N行,每行N个数,第i行第j个数为点i到点j的最短路,第i行第i个数应为0,数字之间空格隔开。
Sample Input
5 10
3 2 1
2 4 7
5 3 4
4 1 2
5 1 8
3 4 10
5 4 9
2 5 2
1 2 1
3 1 10
Sample Output
0 1 2 2 3
1 0 1 3 2
2 1 0 4 3
2 3 4 0 5
3 2 3 5 0
题解
让我们来温习一下弗洛伊德Floyd吧!标准裸题。不解释了。直接上代码
#include<iostream>
#include<cstdlib>
#include<cstring>
#include<vector>
#include<cstdio>
using namespace std;
void Floyd()
{
int n,m;
int g[101][101];
cin>>n>>m;
int a,b,c;
for(int i=1;i<=n;++i)
for(int j=1;j<=n;++j)
if(i==j)g[i][j]=0;
else
g[i][j]=99999999;
for(int i=1;i<=m;++i)
{
cin>>a>>b>>c;
g[a][b]=g[b][a]=c;
}
for(int k=1;k<=n;++k)
for(int i=1;i<=n;++i)
for(int j=1;j<=n;++j)
{
if(g[i][j]>g[i][k]+g[k][j])g[i][j]=g[i][k]+g[k][j];
}
for(int i=1;i<=n;++i)
{
for(int j=1;j<=n;++j)
cout<<g[i][j]<<' ';cout<<endl;
}
}
int main()
{
Floyd();
return 0;
}
【CJOJ P1365】最短路的更多相关文章
- CJOJ 1070 【Uva】嵌套矩形(动态规划 图论)
CJOJ 1070 [Uva]嵌套矩形(动态规划 图论) Description 有 n 个矩形,每个矩形可以用两个整数 a, b 描述,表示它的长和宽.矩形 X(a, b) 可以嵌套在矩形 Y(c, ...
- bzoj1001--最大流转最短路
http://www.lydsy.com/JudgeOnline/problem.php?id=1001 思路:这应该算是经典的最大流求最小割吧.不过题目中n,m<=1000,用最大流会TLE, ...
- 【USACO 3.2】Sweet Butter(最短路)
题意 一个联通图里给定若干个点,求他们到某点距离之和的最小值. 题解 枚举到的某点,然后优先队列优化的dijkstra求最短路,把给定的点到其的最短路加起来,更新最小值.复杂度是\(O(NElogE) ...
- Sicily 1031: Campus (最短路)
这是一道典型的最短路问题,直接用Dijkstra算法便可求解,主要是需要考虑输入的点是不是在已给出的地图中,具体看代码 #include<bits/stdc++.h> #define MA ...
- 最短路(Floyd)
关于最短的先记下了 Floyd算法: 1.比较精简准确的关于Floyd思想的表达:从任意节点A到任意节点B的最短路径不外乎2种可能,1是直接从A到B,2是从A经过若干个节点X到B.所以,我们假设maz ...
- bzoj1266最短路+最小割
本来写了spfa wa了 看到网上有人写Floyd过了 表示不开心 ̄へ ̄ 改成Floyd试试... 还是wa ヾ(。`Д´。)原来是建图错了(样例怎么过的) 结果T了 于是把Floyd改回spfa 还 ...
- HDU2433 BFS最短路
Travel Time Limit: 10000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Sub ...
- 最短路(代码来源于kuangbin和百度)
最短路 最短路有多种算法,常见的有一下几种:Dijstra.Floyd.Bellman-Ford,其中Dijstra和Bellman-Ford还有优化:Dijstra可以用优先队列(或者堆)优化,Be ...
- Javascript优化细节:短路表达式
什么是短路表达式? 短路表达式:作为"&&"和"||"操作符的操作数表达式,这些表达式在进行求值时,只要最终的结果已经可以确定是真或假,求值过程 ...
随机推荐
- QT使用painter绘制文字时的居中显示
在窗体上绘制文字时,在paintEvent()方法里用QPainter进行绘制. 主要获取对字符串打印在屏幕上时占用的像素大小 QPainter p(this); QFont font("宋 ...
- yum安装man命令程序错误
第一次安装CentOS后,man命令无法使用,查了一下,发现没有安装man命令程序.尝试安装man yum install man 结果如下: Loaded plugins: fastestmirro ...
- Java中的双重检查锁(double checked locking)
最初的代码 在最近的项目中,写出了这样的一段代码 private static SomeClass instance; public SomeClass getInstance() { if (nul ...
- Java集合中的Map接口
jdk1.8.0_144 Map是Java三种集合中的一种位于java.util包中,Map作为一个接口存在定义了这种数据结构的一些基础操作,它的最终实现类有很多:HashMap.TreeMap.So ...
- Python数据结构之四——set(集合)
Python版本:3.6.2 操作系统:Windows 作者:SmallWZQ 经过几天的回顾和学习,我终于把Python 3.x中的基础知识介绍好啦.下面将要继续什么呢?让我想想先~~~嗯,还是 ...
- ASP.NET没有魔法——ASP.NET MVC 模型绑定解析(上篇)
前面文章介绍了ASP.NET MVC中的模型绑定和验证功能,本着ASP.NET MVC没有魔法的精神,本章内容将从代码的角度对ASP.NET MVC如何完成模型的绑定和验证进行分析,已了解其原理. 本 ...
- Office 365 共享链接直接进入编辑
首先在Word online共享文档(不多赘述) 但这个链接打开的是预览视图,要点击右上角的"在浏览器中编辑"才能真正编辑. 但是很多情况都是没必要进入这个预览界面再编辑的.这多点 ...
- Qt ActiveX web dome 详细例子
http://doc.qt.io/qt-5.9/activeqt-server.html hierarchy 例子 #ifndef OBJECTS_H #define OBJECTS_H #inclu ...
- CodeForces-748D 贪心
这题的思维难度不是很大,属于编程实现细节处理较多的题. 暂且把每个字符串的"beauty"称为魅力值,用一个优先队列数组将同一个字符串的所有魅力值保存,通过map将不同字符串编号, ...
- Appium疑难杂症
坑之初体验 在Appium的初体验中,遇到了一些坑坑洼洼.将他们记录下来,以后方便查阅. 1. session大于60秒没接收到命令自动关闭 通过Appium-Python-Client连接到appi ...