【BZOJ1003】【ZJOI2006】物流运输trans 最短路预处理+动态规划
来源:互联网 发布:axure 浏览器插件 mac 编辑:程序博客网 时间:2024/05/22 01:29
链接:
#include <stdio.h>int main(){ puts("转载请注明出处[vmurder]谢谢"); puts("网址:blog.csdn.net/vmurder/article/details/44569117");}
题解:
首先我们跑出
然后暴力维护
时间复杂度
暴力处理废点
SPFA 是
反正能过。
然后暴力处理废点部分可以缩掉一个
就是类似利用单调性质哒。每次枚举
代码:
p、n、m、y:天数、点数、边数、改路代价。
#include <queue>#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>#define N 110#define M 1300#define inf 0x3f3f3f3fusing namespace std;struct Eli{ int v,len,next;}e[M];int head[N],cnt;inline void add(int u,int v,int len){ e[++cnt].v=v; e[cnt].len=len; e[cnt].next=head[u]; head[u]=cnt;}bool Dida[N],in[N];int dist[N];queue<int>q;inline void spfa(){ memset(dist,0x3f,sizeof dist); int i,u,v; q.push(1),dist[1]=0; while(!q.empty()) { u=q.front(),in[u]=0,q.pop(); for(i=head[u];i;i=e[i].next) { v=e[i].v; if(Dida[v])continue; if(dist[v]>dist[u]+e[i].len) { dist[v]=dist[u]+e[i].len; if(!in[v])q.push(v),in[v]=1; } } } return ;}int n,m,p,y;bool dida[N][N];int f[N][N],g[N];int main(){ freopen("test.in","r",stdin); int i,j,k; int a,b,c; scanf("%d%d%d%d",&p,&n,&y,&m); while(m--) { scanf("%d%d%d",&a,&b,&c); add(a,b,c),add(b,a,c); } scanf("%d",&m); while(m--) { scanf("%d%d%d",&a,&b,&c); for(i=b;i<=c;i++)dida[a][i]=1; } for(i=1;i<=p;i++) { memset(Dida,0,sizeof Dida); for(j=i;j<=p;j++) { for(k=1;k<=n;k++) Dida[k]|=dida[k][j]; spfa(); f[i][j]=dist[n]; } } for(i=1;i<=p;i++)g[i]=(f[1][i]<inf)?(f[1][i]*i):inf; for(i=1;i<=p;i++)for(j=0;j<i;j++)if(f[j+1][i]<inf) g[i]=min(g[i],g[j]+f[j+1][i]*(i-j)+y); printf("%d\n",g[p]); return 0;}
0 0
- 【BZOJ1003】【ZJOI2006】物流运输trans 最短路预处理+动态规划
- 【bzoj1003】【ZJOI2006】【物流运输】【最短路】【动态规划】
- bzoj1003: [ZJOI2006]物流运输trans[最短路+DP]
- 【bzoj1003】【最短路+DP】【ZJOI2006】物流运输trans
- 【bzoj1003】[ZJOI2006]物流运输trans 最短路+dp
- 【BZOJ1003】[ZJOI2006]物流运输trans【最短路】【DP】
- BZOJ1003 [ZJOI2006]物流运输trans(集合型动态规划)
- [bzoj1003] [ZJOI2006]物流运输trans
- [BZOJ1003][ZJOI2006]物流运输trans
- [Bzoj1003][ZJOI2006]物流运输trans
- bzoj1003[ZJOI2006]物流运输trans
- bzoj1003 [ZJOI2006]物流运输trans
- bzoj1003【zjoi2006】物流运输trans
- bzoj1003[ZJOI2006]物流运输trans
- 【ZJOI2006】【BZOJ1003】物流运输trans
- BZOJ1003: [ZJOI2006] 物流运输 trans
- [BZOJ1003][ZJOI2006]物流运输trans
- 【BZOJ1003】【ZJOI2006】物流运输trans
- mac常用快捷键
- BZOJ-2705-Longge的游戏-SDOI2012-欧拉函数
- RFID作业1-3
- MongoDB环境搭建(Linux环境)
- ACM--steps--dyx--悼念512汶川大地震遇难同胞——老人是真饿了
- 【BZOJ1003】【ZJOI2006】物流运输trans 最短路预处理+动态规划
- ?dede访问路径带有uploads
- iOS 自定义页面的切换动画与交互动画 By Swift
- 僵尸进程的产生原因和避免方法
- HDoj-1719-Friend-巧算巧解
- Jbutton时间按钮
- 【SICP归纳】5 泛型运算符
- 删除尺码和颜色后面价格
- PHP 设计模式