bzoj2763 飞行路线
Description
Input
Output
求最短路,记录每个节点i在使用j次免费路线后当前到起点已知最近距离。
#include<cstdio>
#include<vector>
#include<queue>
using namespace std;
const int inf=0x3fffffff;
int n,m,k;
int s,t;
int a,b,c;
struct edge{
int to,v;
edge(int _,int __):to(_),v(__){}
};
struct node{
int w,s;
node(int _,int __):w(_),s(__){}
};
vector<edge> es[];
int d[][];
bool in[][];
queue<node>q;
int main(){
scanf("%d%d%d",&n,&m,&k);
scanf("%d%d",&s,&t);
for(int i=;i<=m;i++){
scanf("%d%d%d",&a,&b,&c);
es[b].push_back(edge(a,c));
es[a].push_back(edge(b,c));
}
for(int i=;i<n;i++){
for(int j=;j<=k;j++)d[i][j]=inf;
}
d[s][]=;
q.push(node(s,));
while(!q.empty()){
node w=q.front();
q.pop();
in[w.w][w.s]=;
for(int i=es[w.w].size()-;i>=;i--){
int to=es[w.w][i].to;
int v=es[w.w][i].v;
if(d[w.w][w.s]+v<d[to][w.s]){
d[to][w.s]=d[w.w][w.s]+v;
if(!in[to][w.s])q.push(node(to,w.s)),in[to][w.s]=;
}
if(w.s<k&&d[w.w][w.s]<d[to][w.s+]){
d[to][w.s+]=d[w.w][w.s];
if(!in[to][w.s+])q.push(node(to,w.s+)),in[to][w.s+]=;
}
}
}
int minv=inf;
for(int i=;i<=k;i++)if(minv>d[t][i])minv=d[t][i];
printf("%d",minv);
return ;
}
bzoj2763 飞行路线的更多相关文章
- BZOJ2763[JLOI2011]飞行路线 [分层图最短路]
2763: [JLOI2011]飞行路线 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 2523 Solved: 946[Submit][Statu ...
- 【BZOJ2763】飞行路线(最短路)
[BZOJ2763]飞行路线(最短路) 题面 BZOJ Description Alice和Bob现在要乘飞机旅行,他们选择了一家相对便宜的航空公司.该航空公司一共在n个城市设有业务,设这些城市分别标 ...
- BZOJ2763 JLOI2011 飞行路线 【最短路+DP】
BZOJ2763 JLOI2011 飞行路线 Description Alice和Bob现在要乘飞机旅行,他们选择了一家相对便宜的航空公司.该航空公司一共在n个城市设有业务,设这些城市分别标记为0到n ...
- 【bzoj2763】[JLOI2011]飞行路线 (分层图最短路)(优先队列dij)
[bzoj2763][JLOI2011]飞行路线 2014年3月25日1,7260 Description Alice和Bob现在要乘飞机旅行,他们选择了一家相对便宜的航空公司.该航空公司一共在n个城 ...
- 分层图最短路【bzoj2763】: [JLOI2011]飞行路线
bzoj2763: [JLOI2011]飞行路线 Description Alice和Bob现在要乘飞机旅行,他们选择了一家相对便宜的航空公司.该航空公司一共在n个城市设有业务,设这些城市分别标记为0 ...
- bzoj千题计划226:bzoj2763: [JLOI2011]飞行路线
http://www.lydsy.com/JudgeOnline/problem.php?id=2763 这也算分层图最短路? dp[i][j]到城市i,还剩k次免费次数的最短路 #include&l ...
- 【BZOJ2763/洛谷p4563】【分层图最短路】飞行路线
2763: [JLOI2011]飞行路线 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 4630 Solved: 1797[Submit][Stat ...
- bzoj2763: [JLOI2011]飞行路线(分层图spfa)
2763: [JLOI2011]飞行路线 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 3234 Solved: 1235[Submit][Stat ...
- bzoj2763 [JLOI]飞行路线 分层图最短路
问题描述 Alice和Bob现在要乘飞机旅行,他们选择了一家相对便宜的航空公司.该航空公司一共在n个城市设有业务,设这些城市分别标记为0到n-1,一共有m种航线,每种航线连接两个城市,并且航线有一定的 ...
随机推荐
- AnsiStartsStr 和 空字符串
function AnsiStartsStr(const ASubText, AText: string): Boolean; begin Result := AnsiSameStr(ASubText ...
- Python 编码问题(十四)
一.了解字符编码的知识储备 1. 文本编辑器存取文件的原理(nodepad++,pycharm,word) 打开编辑器就打开了启动了一个进程,是在内存中的,所以在编辑器编写的内容也都是存放与内存中的, ...
- DevExpress v18.1新版亮点——WinForms篇(八)
用户界面套包DevExpress v18.1日前终于正式发布,本站将以连载的形式为大家介绍各版本新增内容.本文将介绍了DevExpress WinForms v18.1 的新功能,快来下载试用新版本! ...
- 【DevExpress v17.2新功能预告】DevExtreme TreeList
在即将到来的v17.2中,您可以查看到DevExtremeHTML5 TreeList小部件的这些新功能. 1. 递归选择模式 TreeList将包括一个新的递归选择模式,您只需一次点击即可选择或取消 ...
- mysql-5.6.17-win32安装
下载免安装压缩文件http://dev.mysql.com/downloads/mysql/ 解压到自定义目录,我这里演示的是D:\wamp\mysql\ 复制根目录下的my-default.in ...
- Python 水果统计
f = open("水果.txt", mode="r", encoding="utf-8") lst = [] for line in f: ...
- LUN挂载到Linux主机后,如何对磁盘进行分区
将阵列上的LUN挂载到Linux主机后,如何对磁盘进行分区,方法参考https://www.ibm.com/developerworks/cn/linux/l-lpic1-v3-104-1/ fdis ...
- HDU - 6311:Cover(欧拉回路,最少的一笔画覆盖无向图)
The Wall has down and the King in the north has to send his soldiers to sentinel. The North can be r ...
- 【java规则引擎】《Drools7.0.0.Final规则引擎教程》第4章 4.2 no-loop
转载至:https://blog.csdn.net/wo541075754/article/details/75201934 no-loop 定义当前的规则是否不允许多次循环执行,默认是 false, ...
- 理解cookie和session技术
一.HTTP协议的无状态性 WEB应用程序使用的是HTTP协议传输数据的,HTTP协议是一个无状态的协议,这次数据传输完毕,客户端会和服务端断开连接,再次传输数据就需要重新建立新的连接,这也就无法会话 ...