codevs 1077 多源最短路x
已知n个点(n<=100),给你n*n的方阵,a[i,j]表示从第i个点到第j个点的直接距离。
现在有Q个询问,每个询问两个正整数,a和b,让你求a到b之间的最短路程。
满足a[i,j]=a[j,i];
第一行一个正整数n,接下来n行每行n个正整数,满足a[i,i]=0,再一行一个Q,接下来Q行,每行两个正整数a和b。
一共Q行,每行一个整数。
3
0 1 1
1 0 3
1 3 0
1
2 3
2
n<=100,Q可能非常大。g[i][j]均>=0
请使用flyod算法
使用C/C++的同学请注意:由于输入数据较大,使用cin和cout会导致程序超时。请使用scanf与printf进行输入和输出。
分类标签 Tags 点此展开
#include<iostream>
#include<cstdio> using namespace std; const int MAXN=;
int dis[MAXN][MAXN];
int p[MAXN][MAXN]; void input(int n) {
int i,j,x;
for(i=; i<=n; i++)
for(j=; j<=n; j++) {
scanf("%d",&x);
if(x!=) dis[i][j]=dis[j][i]=x;
}
} void qwq(int n) {
for(int k=; k<=n; k++) {
for(int i=; i<=n; i++) {
for(int j=; j<=n; j++) {
if(dis[i][j]>dis[i][k]+dis[k][j]) {
dis[i][j]=dis[i][k]+dis[k][j];//取小
}
}
}
} } int main() {
int n;
scanf("%d",&n);
input(n);
long long a,b,q;
scanf("%lld",&q);
qwq(n);
for(int i=;i<=q;i++)
{
scanf("%lld %lld",&a,&b);
printf("%d\n",dis[a][b]);
}
return ;
}
codevs 1077 多源最短路x的更多相关文章
- codevs—— 1077 多源最短路
1077 多源最短路 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题解 题目描述 Description 已知n个点(n<=100),给你 ...
- codevs 1077 多源最短路
题目描述 Description 已知n个点(n<=100),给你n*n的方阵,a[i,j]表示从第i个点到第j个点的直接距离. 现在有Q个询问,每个询问两个正整数,a和b,让你求a到b之间的最 ...
- 【floyd】CODEVS 1077 多源最短路
floyd模板 #include<cstdio> #include<algorithm> using namespace std; ][],m,x,y,n; int main( ...
- Codevs 1077 多源最短路( Floyd水 )
链接:传送门 思路:裸 Floyd /************************************************************************* > Fi ...
- 最短路模板(Dijkstra & Dijkstra算法+堆优化 & bellman_ford & 单源最短路SPFA)
关于几个的区别和联系:http://www.cnblogs.com/zswbky/p/5432353.html d.每组的第一行是三个整数T,S和D,表示有T条路,和草儿家相邻的城市的有S个(草儿家到 ...
- [ACM_图论] Domino Effect (POJ1135 Dijkstra算法 SSSP 单源最短路算法 中等 模板)
Description Did you know that you can use domino bones for other things besides playing Dominoes? Ta ...
- 用scheme语言实现SPFA算法(单源最短路)
最近自己陷入了很长时间的学习和思考之中,突然发现好久没有更新博文了,于是便想更新一篇. 这篇文章是我之前程序设计语言课作业中一段代码,用scheme语言实现单源最段路算法.当时的我,花了一整天时间,学 ...
- 单源最短路_SPFA_C++
当我们需要求一个点到其它所有点的最短路时,我们可以采用SPFA算法 代码特别好写,而且可以有环,但是不能有负权环,时间复杂度是O(α(n)n),n为边数,α(n)为n的反阿克曼函数,一般小于等于4 模 ...
- 【UVA1416】(LA4080) Warfare And Logistics (单源最短路)
题目: Sample Input4 6 10001 3 21 4 42 1 32 3 33 4 14 2 2Sample Output28 38 题意: 给出n个节点m条无向边的图,每条边权都为正.令 ...
随机推荐
- ABC136E Max GCD
Thinking about different ways of thinking. --- LzyRapx 题目 思路比较容易想到. Observations: 每次操作过后和不变. 枚举和的因子 ...
- 最长相同01数的子串(map搞搞)--牛客第三场 -- Crazy Binary String
题意: 如题. 或者用我的数组分治也可以,就是有点愚蠢. //#include <bits/stdc++.h> #include <map> #include <iost ...
- C++ 对象构造顺序、构析函数、临时对象。
对象的构造顺序: 1.对于局部对象,构造顺序是根据程序执行流进行构造,从上到下. #include <stdio.h> class Test { int mi; public: Test( ...
- jsp页面中使用 splitfn:split注意事项
我们有一个 字段存储内容是 xxxx意见~~@~~是 在页面上需要分开显示,格式为 xxx意见 是 使用 ${fn:split(comments, '~~@~~')[1]} 来分割是发现出现@符文字 ...
- ES6 模块的加载实现 import和export
ES6的Class只是面向对象编程的语法糖,升级了ES5的构造函数的原型链继承的写法,并没有解决模块化问题.Module功能就是为了解决这个问题而提出的. 历史上,JavaScript一直没有模块(m ...
- webpack4 打包
1. 基本安装及命令 npm config set registry https://registry.npm.taobao.org // 淘宝镜像npm install webpack-c ...
- mongodb的简单操作记录
由于项目上需要对mongodb进行监控,所以需要先熟悉下什么是mongobd以及mongodb的简单操作 mongodb的安装: curl -O https://fastdl.mongodb.org/ ...
- mysql的导入导出操作
mysqldump工具基本用法 此方法不适用于大数据备份 备份所有数据库 mysqldump -u root -p --all-databases > all_database_sql 备份my ...
- linux的一些运维操作基本知识
1 ~/.bashrc 这个可以认为是linux系统的启动项,每次启动的时候都会运行一些这里边的命令: 常见的有: alias rm='rm -i'//修改某些指令: export LD_LIBRAR ...
- Systemctl和service、chkconfig命令的关系
systemctl命令:是一个systemd工具,主要负责控制systemd系统和服务管理器. service命令:可以启动.停止.重新启动和关闭系统服务,还可以显示所有系统服务的当前状态. ch ...