既然输入的是损坏率,那1-x就是剩余的。最后只要剩余的最大。

  1. #include<stdio.h>
  2. #include<string.h>
  3. #define Max 99999999
  4. const int maxn=;
  5. double dis[maxn],map[maxn][maxn];
  6. int vis[maxn],n,val[maxn];
  7. void init()
  8. {
  9. int i,j;
  10. for(i=;i<=n;i++)
  11. for(j=;j<=n;j++)
  12. if(i==j)
  13. map[i][j]=;
  14. else map[i][j]=;
  15. }
  16. void dij()
  17. {
  18. int i,j,pos;
  19. pos=n;
  20. memset(vis,,sizeof(vis));
  21. for(i=;i<=n;i++)
  22. dis[i]=;
  23. dis[pos]=;
  24. // vis[pos]=1;
  25. for(i=;i<=n;i++)
  26. {
  27. double min=-Max;
  28. for(j=;j<=n;j++)
  29. {
  30. if(!vis[j]&&min<dis[j])
  31. {
  32. pos=j;
  33. min=dis[j];
  34. }
  35. }
  36. vis[pos]=;
  37. for(j=;j<=n;j++)
  38. {
  39. if(!vis[j]&&dis[j]<map[pos][j]*dis[pos])
  40. dis[j]=map[pos][j]*dis[pos];
  41. }
  42. }
  43. }
  44. int main()
  45. {
  46. int i,j,m;
  47. double cost;
  48. while(scanf("%d%d",&n,&m)!=EOF)
  49. {
  50. init();
  51. for(i=;i<n;i++)
  52. scanf("%d",&val[i]);
  53. for(i=;i<=m;i++)
  54. {
  55. int x,y;
  56. scanf("%d%d%lf",&x,&y,&cost);
  57. if(map[x][y]<-cost)
  58. map[x][y]=map[y][x]=-cost;
  59. }
  60. /*for(i=1;i<=n;i++)
  61. {
  62. for(j=1;j<=n;j++)
  63. {
  64. printf("%.2lf ",map[i][j]);
  65. }
  66. printf("\n");
  67. }*/
  68. double ans=;
  69. dij();
  70. /*for(i=1;i<=n;i++)
  71. printf("%d ",dis[i]);
  72. printf("\n");*/
  73. for(i=;i<n;i++)
  74. ans+=val[i]*dis[i];
  75. printf("%.2lf\n",ans);
  76. }
  77. }

zoj1665 dij变形的更多相关文章

  1. POJ 1797 【一种叫做最大生成树的很有趣的贪心】【也可以用dij的变形思想~】

    题意: 给一个无向图,找1到n所有的路中每条路最小权值的最大值! 屌丝一开始的思想是利用dij的变形~ 但是==屌丝忘记了更新dis数组~结果TLE无数次... 说正经的~dij的变形思想是这样的if ...

  2. hdu 1596 find the safest road (变形SP && dij+heap)

    Problem - 1596 变形最短路问题,给出邻接矩阵,要求求出给定点对间安全率最大值. 这题可以用dijkstra+heap来做.对于每一个查询,做一次dij即可. 代码如下: #include ...

  3. POJ.1797 Heavy Transportation (Dijkstra变形)

    POJ.1797 Heavy Transportation (Dijkstra变形) 题意分析 给出n个点,m条边的城市网络,其中 x y d 代表由x到y(或由y到x)的公路所能承受的最大重量为d, ...

  4. 【lightoj-1002】Country Roads(dijkstra变形)

    light1002:传送门 [题目大意] n个点m条边,给一个源点,找出源点到其他点的‘最短路’ 定义:找出每条通路中最大的cost,这些最大的cost中找出一个最小的即为‘最短路’,dijkstra ...

  5. Light oj-1002 - Country Roads,迪杰斯特拉变形,不错不错~~

                                                                                               1002 - Co ...

  6. HN0I2000最优乘车 (最短路变形)

    HN0I2000最优乘车 (最短路变形) 版权声明:本篇随笔版权归作者YJSheep(www.cnblogs.com/yangyaojia)所有,转载请保留原地址! [试题]为了简化城市公共汽车收费系 ...

  7. Heavy Transportation POJ 1797 最短路变形

    Heavy Transportation POJ 1797 最短路变形 题意 原题链接 题意大体就是说在一个地图上,有n个城市,编号从1 2 3 ... n,m条路,每条路都有相应的承重能力,然后让你 ...

  8. 最短路变形题目 HDU多校7

    Mr.Quin love fishes so much and Mr.Quin’s city has a nautical system,consisiting of N ports and M sh ...

  9. CSS3变形记(上):千变万化的Div

    传统上,css就是用来对网页进行布局和渲染网页样式的.然而,css3的出现彻底打破了这一格局.了解过css3的人都知道,css3不但可以对网页进行布局和渲染样式,还可以绘制一些图形.对元素进行2D和3 ...

随机推荐

  1. tarjan算法+缩点:求强连通分量 POJ 2186

    强连通分量:1309. [HAOI2006]受欢迎的牛 ★★   输入文件:cow.in   输出文件:cow.out   简单对比时间限制:1 s   内存限制:128 MB [题目描述] 每一头牛 ...

  2. codeforces 709C C. Letters Cyclic Shift(贪心)

    题目链接: C. Letters Cyclic Shift 题意: 现在一串小写的英文字符,每个字符可以变成它前边的字符即b-a,c-a,a-z这样,选一个字串变换,使得得到的字符串字典序最小; 思路 ...

  3. POJ 1442 Black Box -优先队列

    优先队列..刚开始用蠢办法,经过一个vector容器中转,这么一来一回这么多趟,肯定超时啊. 超时代码如下: #include <iostream> #include <cstdio ...

  4. Android之数据存储----使用LoaderManager异步加载数据库

    一.各种概念: 1.Loaders: 适用于Android3.0以及更高的版本,它提供了一套在UI的主线程中异步加载数据的框架.使用Loaders可以非常简单的在Activity或者Fragment中 ...

  5. Unity3D实现赛车的灯光效果

    车灯的需求 在赛车游戏中,遇到灯光弱的环境,赛车车可以打开前车灯照亮路边及前方,那一定是非常酷! 也见过虚拟现实项目通过Unity模拟汽车车灯的效果,但是我还没有想到好的思路来实现. 我的思路 使用( ...

  6. [3D跑酷] MissionManager

    前言 许久没有更新日志了,之前写了GUIManager,GUIClickEventReceiver还有AudioManager,这次写MissionManager 引用关系 首先看下MissionMa ...

  7. Android的Style的使用

    Style个人理解就是view的一些属性的集合,那么一系列view(例如TextVIew),只要是要该style那么就都有相同的内容,如 文字的大少,颜色等,方便修改 首先最基本的使用,多个textV ...

  8. R语言-merge和rbind

    rbind 使用方式 合并两个数据集,要求两个数据集的列数相等: rbind(parameter1,parameter2) 1 1 合并多个数据集,各个数据集的列数相等: rbind(paramete ...

  9. Expression<Func<T,TResult>>和Func<T,TResult>

    1.Expression<Func<T,TResult>>是表达式 //使用LambdaExpression构建表达式树 Expression<Func<int, ...

  10. WPF RadioButton 转换

    模型 public class people { public string name{get;set;} public bool? sex{get;set;} } 转换器 namespace Hel ...