bzoj1579 [Usaco2009 Feb]Revamping Trails 道路升级(分层图最短路)
2017-09-08 07:44
405 查看
根bzoj2763一模一样。
#include <bits/stdc++.h> using namespace std; #define pa pair<int,pair<int,int> > #define ll long long #define inf 1LL<<60 #define N 10010 #define M 50010 inline int read(){ int x=0,f=1;char ch=getchar(); while(ch<'0'||ch>'9'){if(ch=='-') f=-1;ch=getchar();} while(ch>='0'&&ch<='9') x=x*10+ch-'0',ch=getchar(); return x*f; } int n,m,k,h ,num=0; bool f [22]; ll d [22],ans=inf; struct edge{ int to,next,val; }data[M<<1]; void Dijkstra(){ priority_queue<pa,vector<pa>,greater<pa> >q; for(int i=1;i<=n;++i) for(int j=0;j<=k;++j) d[i][j]=inf; q.push(make_pair(0,make_pair(1,0)));d[1][0]=0; while(!q.empty()){ int x=q.top().second.first,kx=q.top().second.second; q.pop();if(f[x][kx]) continue;f[x][kx]=1; for(int i=h[x];i;i=data[i].next){ int y=data[i].to; if(d[x][kx]+data[i].val<d[y][kx]){ d[y][kx]=d[x][kx]+data[i].val; q.push(make_pair(d[y][kx],make_pair(y,kx))); } if(kx+1<=k&&d[x][kx]&l 112e3 t;d[y][kx+1]){ d[y][kx+1]=d[x][kx]; q.push(make_pair(d[y][kx+1],make_pair(y,kx+1))); } } } } int main(){ // freopen("a.in","r",stdin); n=read();m=read();k=read(); while(m--){ int x=read(),y=read(),v=read(); data[++num].to=y;data[num].next=h[x];h[x]=num;data[num].val=v; data[++num].to=x;data[num].next=h[y];h[y]=num;data[num].val=v; } Dijkstra(); for(int i=0;i<=k;++i) ans=min(ans,d [i]); printf("%lld\n",ans); return 0; }
相关文章推荐
- [BZOJ1579] [Usaco2009 Feb]Revamping Trails 道路升级(分层图最短路 + 堆优化dijk)
- 分层图最短路 【bzoj1579】[Usaco2009 Feb]Revamping Trails 道路升级
- BZOJ 1579: [Usaco2009 Feb]Revamping Trails 道路升级( 最短路 )
- BZOJ_1579_[Usaco2009 Feb]Revamping Trails 道路升级_分层图最短路
- 【bzoj1579】[Usaco2009 Feb]Revamping Trails 道路升级 分层图最短路
- 【BZOJ 1579】 1579: [Usaco2009 Feb]Revamping Trails 道路升级 (最短路)
- BZOJ 1579: [Usaco2009 Feb]Revamping Trails 道路升级 分层图最短路
- bzoj 1579: [Usaco2009 Feb]Revamping Trails 道路升级 -- 分层图最短路
- bzoj1579 [Usaco2009 Feb]Revamping Trails 道路升级
- bzoj 1579: [Usaco2009 Feb]Revamping Trails 道路升级 优先队列+dij
- Bzoj 1579: [Usaco2009 Feb]Revamping Trails 道路升级 dijkstra,堆,分层图
- bzoj 1579: [Usaco2009 Feb]Revamping Trails 道路升级——分层图+dijkstra
- BZOJ1579 [Usaco2009 Feb]Revamping Trails 道路升级
- 【BZOJ】1579: [Usaco2009 Feb]Revamping Trails 道路升级
- BZOJ1579: [Usaco2009 Feb]Revamping Trails 道路升级
- 【bzoj1579】[Usaco2009 Feb]Revamping Trails 道路升级
- bzoj 1579: [Usaco2009 Feb]Revamping Trails 道路升级【分层图+spfa】
- bzoj1579 [Usaco2009 Feb]Revamping Trails 道路升级 分层图dij+heap
- [BZOJ1579][Usaco2009 Feb]Revamping Trails 道路升级(二维最短路问题)
- [Usaco2009 Feb]Revamping Trails 道路升级 BZOJ1579