蓝桥杯-最短路(floyd算法)
给定一个n个顶点,m条边的有向图(其中某些边权可能为负,但保证没有负环)。请你计算从1号点到其他点的最短路(顶点从1到n编号)。
输入格式
第一行两个整数n, m。
接下来的m行,每行有三个整数u, v, l,表示u到v有一条长度为l的边。
输出格式
共n-1行,第i行表示1号点到i+1号点的最短路。
样例输入
3 3
1 2 -1
2 3 -1
3 1 2
样例输出
-1
-2
数据规模与约定
对于10%的数据,n = 2,m = 2。
对于30%的数据,n <= 5,m <= 10。
对于100%的数据,1 <= n <= 20000,1 <= m <= 200000,-10000 <= l <= 10000,保证从任意顶点都能到达其他所有顶点。
package com.sihai.advance;
import java.util.Scanner;
public class Zuiduanlu { public void floyd(long[][] adjMatrix) { for(int k = 0;k < adjMatrix.length;k++) { for(int i = 0;i < adjMatrix.length;i++) { for(int j = 0;j < adjMatrix.length;j++) {if(adjMatrix[i][k] != Integer.MAX_VALUE && adjMatrix[k][j] != Integer.MAX_VALUE) { if(adjMatrix[i][j] > adjMatrix[i][k] + adjMatrix[k][j]) adjMatrix[i][j] = adjMatrix[i][k] + adjMatrix[k][j]; } } } } for(int i = 1;i < adjMatrix.length;i++) System.out.println(adjMatrix[0][i]); } public static void main(String[] args) { Zuiduanlu test = new Zuiduanlu(); Scanner in = new Scanner(System.in);int n = in.nextInt(); int m = in.nextInt(); if(n > 20000 || n < 1 || m > 200000 || m < 1) return;long[][] adjMatrix = new long[n][n]; for(int i = 0;i < n;i++) { for(int j = 0;j < n;j++) adjMatrix[i][j] = Integer.MAX_VALUE; } for(int i = 0;i < m;i++) { int a = in.nextInt(); int b = in.nextInt(); int value = in.nextInt(); if(value > 10000 || value < -10000) return; adjMatrix[a - 1][b - 1] = value; } test.floyd(adjMatrix); } }
蓝桥杯-最短路(floyd算法)相关推荐
- 蓝桥杯最短路(java过)spfa单源最短路算法
spfa 百度百科上spfa的思路为:动态逼近法:设立一个先进先出的队列用来保存待优化的结点,优化时每次取出队首结点u,并且用u点当前的最短路径估计值对离开u点所指向的结点v进行松弛操作,如果v点的最 ...
- 蓝桥杯练习系统习题-算法训练1
蓝桥杯练习系统习题-算法训练1 题目搜索方式:Ctrl+F--> 输入题目名称->定位到解答. 入门训练(详见 算法-蓝桥杯习题(1-1)) 基础练习(详见 算法-蓝桥杯习题(2-1)) ...
- 蓝桥杯练习系统习题-算法提高2
文章推荐 精选java等全套学习资源 精选java电子图书资源 精选大数据学习资源 java项目练习精选 蓝桥杯练习系统习题-算法提高2 题目搜索方式:Ctrl+F--> 输入题目名称-> ...
- 蓝桥杯练习系统习题-算法提高1
文章推荐 精选java等全套学习资源 精选java电子图书资源 精选大数据学习资源 java项目练习精选 蓝桥杯练习系统习题-算法提高1 题目搜索方式:Ctrl+F--> 输入题目名称-> ...
- 蓝桥杯练习系统习题-算法训练6
文章推荐 精选java等全套学习资源 精选java电子图书资源 精选大数据学习资源 java项目练习精选 蓝桥杯练习系统习题-算法训练6 题目搜索方式:Ctrl+F--> 输入题目名称-> ...
- 蓝桥杯练习系统习题-算法训练5
文章推荐 精选java等全套学习资源 精选java电子图书资源 精选大数据学习资源 java项目练习精选 蓝桥杯练习系统习题-算法训练5 题目搜索方式:Ctrl+F--> 输入题目名称-> ...
- 蓝桥杯练习系统习题-算法训练3
文章推荐 精选java等全套学习资源 精选java电子图书资源 精选大数据学习资源 java项目练习精选 蓝桥杯练习系统习题-算法训练3 题目搜索方式:Ctrl+F--> 输入题目名称-> ...
- 蓝桥杯练习系统习题-算法训练2
文章推荐 精选java等全套学习资源 精选java电子图书资源 精选大数据学习资源 java项目练习精选 蓝桥杯练习系统习题-算法训练2 题目搜索方式:Ctrl+F--> 输入题目名称-> ...
- 【蓝桥杯】什么算法才是版本答案?近三年(2019-2021)蓝桥杯省赛涉及算法出现频率分析
2022年的蓝桥杯比赛已经基本报名结束,寒假来临,如何抓住重点,快速掌握各种算法知识,在4月份的蓝桥杯省赛中取得好成绩呢?本文收集了近三年的4场蓝桥杯省赛题目,(2019年,2020年第二场,2020 ...
- 蓝桥杯比赛常考算法_备战蓝桥--算法竞赛入门第一章总结
笔者备战蓝桥杯先打算看完<算法竞赛入门经典>第2版,在这里写下第一章的笔记,供自己和大家参考. 鸡兔同笼问题 原题: 已知鸡和兔的总数量为n,总腿数为m.输入n和m,依次输出鸡的数目和兔的 ...
最新文章
- awk 以列为域提取文件内容
- “记住密码“功能的正确设计
- 打印给定字符串中字符的所有排列
- php copy 图片_PHP-imagecopy黑色背景
- apache 支持.htaccess重写url
- 一些比较有用的SQL操作,2011最新整理
- 什么是Python中的类型转换?
- 使用JWT的ASP.NET CORE令牌身份验证和授权(无Cookie)——第1部分
- VMware 软件被曝其史上最严重的信息泄露漏洞之一,影响大量虚拟机和主机
- CentOS下SNMP的安装与使用
- jquey知识点整理
- windows bat打印机打印测试页
- 笔记本测试屏幕的型号的软件,哪个软件可以检测到笔记本的型号
- python小波去噪实验
- 计算机的平方根的符号是哪个,平方根
- 数据可视化平台理论与实践
- python读取fits第三方库_如何读取FITS
- mysql练习题及答案_mysql练习题及答案.doc
- 这辈子你会遇见谁,早已命中注定
- 资深猎头解密:什么样的简历一投就中?