HDU.1596 find the safest road (Floyd)
HDU.1596 find the safest road (Floyd)
题意分析
与普通的最短路不太相同,本题有些许的变化。
1. 要找到由i到j最安全的路,故在求解的时候要保证mp[i][j]尽量大,而不是尽量小。
2. 当mp[i][j] = 0的时候表示无法通过,而不是为无穷大的时候无法通过。
3. 路程求解过程中,安全系数是相乘的关系,不是按照普通路径的相加的关系。
4. 此题n^3的Floyd竟然能过,我惊了。
代码总览
#include <bits/stdc++.h>
#define nmax 1005
using namespace std;
const double eps = 1e-5;
double mp[nmax][nmax];
int n,m;
void floyd()
{
for(int k = 1; k<=n;++k){
for(int i =1 ;i<=n ;++i){
for(int j = 1; j<=n; ++j){
if(fabs(mp[i][k] - 0.0 ) <= eps || fabs(mp[k][j] - 0.0 ) <= eps )
continue;
else{
double temp = mp[i][k] * mp[k][j];
if(temp > mp[i][j]){
mp[i][j] = temp;
}
}
}
}
}
}
int main()
{
while(scanf("%d",&n) !=EOF){
memset(mp,0,sizeof(mp));
for(int i = 1; i<=n ;++i){
for(int j = 1; j<=n ;++j){
scanf("%lf",&mp[i][j]);
}
}
floyd();
scanf("%d",&m);
int sta, end;
for(int i = 0; i<m;++i){
scanf("%d %d",&sta,&end);
double temp = mp[sta][end];
if(fabs(temp - 0.0) <=eps)
printf("What a pity!\n");
else
printf("%.3f\n",temp);
}
}
return 0;
}
HDU.1596 find the safest road (Floyd)的更多相关文章
- HDU 1596 find the safest road (最短路)
find the safest road Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Ot ...
- hdu 1596 find the safest road (最短路径)
find the safest road Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Ot ...
- hdu 1596 find the safest road
http://acm.hdu.edu.cn/showproblem.php?pid=1596 #include <cstdio> #include <cstring> #inc ...
- hdu 1596 find the safest road(最短路,模版题)
题目 这是用Dijsktra做的,稍加改动就好,1000ms..好水.. #define _CRT_SECURE_NO_WARNINGS #include<string.h> #inclu ...
- hdu 1596 find the safest road (变形SP && dij+heap)
Problem - 1596 变形最短路问题,给出邻接矩阵,要求求出给定点对间安全率最大值. 这题可以用dijkstra+heap来做.对于每一个查询,做一次dij即可. 代码如下: #include ...
- HDU 1596 find the safest road(SPFA)
Problem Description XX星球有很多城市,每个城市之间有一条或多条飞行通道,但是并不是所有的路都是很安全的,每一条路有一个安全系数s,s是在 0 和 1 间的实数(包括0,1),一条 ...
- hdu 1596 find the safest road (dijkstra)
Problem Description XX星球有很多城市,每个城市之间有一条或多条飞行通道,但是并不是所有的路都是很安全的,每一条路有一个安全系数s,s是在 0 和 1 间的实数(包括0,1),一条 ...
- 杭电 1596 find the safest road (最短路)
http://acm.hdu.edu.cn/showproblem.php?pid=1596 这道题目与杭电2544最短路的思想是一样的.仅仅只是是把+改成了*,输入输出有些不一样而已. find t ...
- hdu1569find the safest road(floyd变形求最大安全值)
find the safest road Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Ot ...
随机推荐
- Python对象引用问题总结
对于对象引用问题,一直是一知半解的状态,现整理以备使用. 操作不可变对象进行加减运算时,会在内存中创建新的不可变实例,不会影响原来的引用>>> c=12>>> d= ...
- leetcode-最长无重复字符的子串
参考他的人代码:https://blog.csdn.net/littlebai07/article/details/79100081 给定一个字符串,找出不含有重复字符的最长子串的长度. 示例 1: ...
- leetcode-反转链表
转载至:https://blog.csdn.net/fx677588/article/details/72357389 反转一个单链表. 示例: 输入: 1->2->3->4 ...
- (原) MaterialEditor部- UmateriaEditor中 Node编译过程和使用(2)
@白袍小道 转载说明原处 插件同步在GITHUB: DaoZhang_XDZ 需求: 1.梳理FexpressionInput和Output的编译和链接(套路和逻辑目的) 2.如何做到节点编译 ...
- JavaScript 常用控制流程代码范例
if-else 的用法 var a = 33 if (a == 1){ console.log ('a等于1') } else if (a==2) { console.log ('a等于2') } e ...
- 创新手机游戏《3L》开发点滴(1)——道具、物品、装备表设计
一.游戏物品/道具系统数据模型设计特点 为了让游戏更加的丰富,我们1201团队的新手机游戏设计了道具系统.于是丰富了游戏.取悦了玩家,哭了开发——道具/物品数据子系统是简单的.复杂的.不确定的: 简单 ...
- Jquery复选框
Jquery复选框 1.checkbox list选择 代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//E ...
- 20172333 2017-2018-2 《Java程序设计》第7周学习总结
20172333 2017-2018-2 <Java程序设计>第7周学习总结 教材学习内容 1.继承是创建新类的快捷方式之一,继承可以使用父类的所有方法及对象. 2.继承具有单向性,父类不 ...
- 代替iframe的方法
$('#framecont').html('').load("pageURL"); 使用jQuery.
- String 和 CharSequence 关系与区别
String 继承于CharSequence,也就是说String也是CharSequence类型. CharSequence是一个接口,它只包括length(), charAt(int index) ...