hdu 2851(最短路)
竟然是最短路!!!!
藏的好深啊
- /*
- 求从路1走到路i的最小危险值,
- 给出n条路的起点和终点,当i,j两路有重合的,我们使map[i][j]=v[j];
- 把路当作最短路中的点,如果有重合的map[i][j]=v[j];
- 否则,map[i][j]=inf;
- 之后按照最短路的求法就可以了,注意最后要加上v[1];
- */
- #include"stdio.h"
- #include"string.h"
- #define N 2011
- #define inf 999999999
- struct node
- {
- int a,b,c;
- }A[N];
- int map[N][N];
- int n,m;
- int dis[N];
- int mark[N];
- void dijk()
- {
- int i,j,min,k;
- memset(mark,0,sizeof(mark));
- for(i=1;i<=n;i++)
- dis[i]=map[1][i];
- mark[1]=1;
- for(i=1;i<n;i++)
- {
- min=inf;k=-1;
- for(j=1;j<=n;j++)
- {
- if(!mark[j]&&min>dis[j])
- {
- min=dis[j];
- k=j;
- }
- }
- if(k==-1)break;
- mark[k]=1;
- for(j=1;j<=n;j++)
- {
- if(!mark[j]&&dis[j]>dis[k]+map[k][j])
- dis[j]=dis[k]+map[k][j];
- }
- }
- }
- int main()
- {
- int T;
- int i,j;
- scanf("%d",&T);
- while(T--)
- {
- scanf("%d%d",&n,&m);
- for(i=1;i<=n;i++)
- {
- for(j=1;j<=n;j++)
- map[i][j]=inf;
- map[i][i]=0;
- }
- for(i=1;i<=n;i++)
- scanf("%d%d%d",&A[i].a,&A[i].b,&A[i].c);
- for(i=1;i<=n;i++)
- {
- for(j=i+1;j<=n;j++)
- {
- if(A[i].b>=A[j].a&&A[j].b>=A[i].b)
- map[i][j]=A[j].c;
- }
- }
- dijk();
- int a;
- while(m--)
- {
- scanf("%d",&a);
- if(dis[a]<inf)printf("%d\n",dis[a]+A[1].c);
- else printf("-1\n");
- }
- }
- return 0;
- }
hdu 2851(最短路)的更多相关文章
- HDU 2851 (最短路)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2851 题目大意:给出N条路径,M个终点(是路径的编号) .重合的路径才算连通的,且路径是单向的.每条路 ...
- ACM: HDU 2544 最短路-Dijkstra算法
HDU 2544最短路 Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Descrip ...
- UESTC 30 &&HDU 2544最短路【Floyd求解裸题】
最短路 Time Limit: 5000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submiss ...
- hdu 5521 最短路
Meeting Time Limit: 12000/6000 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Others)Total ...
- HDU - 2544最短路 (dijkstra算法)
HDU - 2544最短路 Description 在每年的校赛里,所有进入决赛的同学都会获得一件很漂亮的t-shirt.但是每当我们的工作人员把上百件的衣服从商店运回到赛场的时候,却是非常累的!所以 ...
- hdu - 2851 Lode Runner (最短路)
http://acm.hdu.edu.cn/showproblem.php?pid=2851 首先有n层,每层的路径都有一个起点和终点和对应的危险值,如果某两层之间有交集,就能从这一层上到另外一层,不 ...
- HDU2112 HDU Today 最短路+字符串哈希
HDU Today Time Limit: 15000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total ...
- hdu 2544 最短路
题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=2544 最短路 Description 在每年的校赛里,所有进入决赛的同学都会获得一件很漂亮的t-shi ...
- hdu 2544 最短路 Dijkstra
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2544 题目分析:比较简单的最短路算法应用.题目告知起点与终点的位置,以及各路口之间路径到达所需的时间, ...
随机推荐
- Mod_Python中文文档
Mod_Python中文文档 mod_python中文文档
- JS~delegate与live
在jquery里有两个方法可以用来绑定自动追加出来的DOM对象,它们是live和delegate,事实上,这两个方法是bind方法的一个变体,在对于固定DOM对象时,我们通常使用bind就可以了,而对 ...
- Vitaliy and Pie(模拟)
Vitaliy and Pie Time Limit:2000MS Memory Limit:262144KB 64bit IO Format:%I64d & %I64u Su ...
- Objective C - UIColor
UIColor+Hex.h #import <UIKit/UIKit.h> @interface UIColor (Hex) + (UIColor *) colorWithHexStrin ...
- scrollTo和scrollTo.js
最近做一个项目前端要用到scrollTo和滚动视觉差.顺便把两个东西拿出来温习一下. HTML DOM里面定义了scrollTo方法,用法:scrollTo(xpos,ypos),把内容滚动到当前的指 ...
- 多线程:pthread_exit,pthread_join,pthread_self
/*exit_join_id.c*/ #include<pthread.h> #include<stdio.h> void* eji(void* agr) { printf(& ...
- android——背景颜色渐变(梯度变化)
首先在drawable文件夹下面新建一个xml文件,起名为bgcolor.xml. 代码如下: <?xml version="1.0" encoding="utf- ...
- Android应用自动更新功能的实现!!!
自动更新功能的实现原理,就是我们事先和后台协商好一个接口,我们在应用的主Activity里,去访问这个接口,如果需要更新,后台会返回一些数据(比如,提示语:最新版本的url等).然后我们给出提示框,用 ...
- css基础之 id和选择器
id 和 class 选择器 如果你要在HTML元素中设置CSS样式,你需要在元素中设置"id" 和 "class"选择器. (1) id 选择器 id 选择器 ...
- PHP读取CSV大文件导入数据库的示例
对于数百万条数据量的CSV文件,文件大小可能达到数百M,如果简单读取的话很可能出现超时或者卡死的现象. 为了成功将CSV文件里的数据导入数据库,分批处理是非常必要的. 下面这个函数是读取CSV文件中指 ...