【最短路】bzoj2763 飞行路线
来源:互联网 发布:如何看网络直播 编辑:程序博客网 时间:2024/05/16 12:56
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=2763
题目大意:给你一张无向图,可以免费走k条路,求起点到终点的最短路
bzoj少见的水题(你写题解的不都是水题吗= =)
dist[i][j]代表起点到i,免费走j条路的最短路,跑Dijkstra或者SPFA即可
(不得不说SPFA不加优化真的好慢= =)
#include <iostream>#include <cstdio>#include <queue>#define INF 214748367using namespace std;struct Link{ int s,t,c,next;}l[200000];struct poi{ int x,y;};int dist[20000][20];int g[20000];queue<poi> Q;int n,m,k;int spfa(int s,int t){ for(int i = 0;i < n;i ++) for(int j = 0;j <= k;j ++) dist[i][j] = INF; dist[s][0] = 0; Q.push((poi){s,0}); while(!Q.empty()) { int x = Q.front().x; int y = Q.front().y; int w = g[x]; while(w) { if(dist[l[w].t][y] > dist[x][y] + l[w].c) { dist[l[w].t][y] = dist[x][y] + l[w].c; Q.push((poi){l[w].t,y}); } if(y < k && dist[l[w].t][y+1] > dist[x][y]) { dist[l[w].t][y+1] = dist[x][y]; Q.push((poi){l[w].t,y+1}); } w = l[w].next; } Q.pop(); } int ans = INF; for(int i = 0;i <= k;i ++) ans = min(ans,dist[t][i]); return ans;}void Add_Link(int s,int t,int c,int x){ l[x].s = s; l[x].t = t; l[x].c = c; l[x].next = g[s]; g[s] = x; return ;}int main(){ int s,t,x,y,z; scanf("%d%d%d%d%d",&n,&m,&k,&s,&t); for(int i = 1;i <= m;i ++) { scanf("%d%d%d",&x,&y,&z); Add_Link(x,y,z,i); Add_Link(y,x,z,i+m); } cout << spfa(s,t); return 0;}
0 0
- 【最短路】bzoj2763 飞行路线
- [bzoj2763][最短路]飞行路线
- 【bzoj2763】 JLOI2011飞行路线 分层最短路
- [bzoj2763]飞行路线 分层图最短路
- [BZOJ2763][JLOI2011][分层图最短路]飞行路线
- bzoj2763: [JLOI2011]飞行路线 分层图最短路
- BZOJ2763 [JLOI2011]飞行路线(分层图最短路)
- 【JLOI2011】【bzoj2763】飞行路线 分层图最短路
- BZOJ2763[JLOI2011]飞行路线 【分层图最短路】
- bzoj2763[JLOI2011]飞行路线 分层图最短路
- [bzoj2763]2763: [JLOI2011]飞行路线 分层图最短路
- bzoj2763 [JLOI2011]飞行路线(分层图最短路)
- 【JLOI2011】【BZOJ2763】飞行路线
- BZOJ2763: [JLOI2011]飞行路线
- bzoj2763【JLOI2011】飞行路线
- BZOJ2763 [JLOI2011]飞行路线
- 【bzoj2763】[JLOI2011]飞行路线
- [BZOJ2763][JLOI2011]飞行路线
- 韩顺平java 第32讲 swing编程实战
- 深入浅出PageRank算法
- HDU 4466 Triangle (边长a+b+c=M的三角形个数->且gcd(a,b,c)=1的三角形个数)
- 教训提莫 网易赛码网在线笔试
- Codeforces 8C
- 【最短路】bzoj2763 飞行路线
- modbus通讯协议解析
- ios第三方数据请求 UI_15
- 第一次写策划书的感想
- ggplot2学习笔记之位置标度
- IO流上:概述、字符流、缓冲区(java基础)
- socket编程实现一个简单的多人通信(udp)
- NumberFormat
- jQuery 2.0.3 源码分析 事件绑定 - bind/live/delegate/on