bzoj1922: [Sdoi2010]大陆争霸
来源:互联网 发布:零售业数据公式 编辑:程序博客网 时间:2024/04/28 00:20
传送门
我们假设d1[i]表示机器人到达i的最短时间
d2[i]为结界消失的最短时间
则一个点可以被访问到的最短时间为max(d1[i],d2[i])
我们跑一遍最短路
等到该节点满足条件就向外扩展
#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>#include<cstdlib>#include<cmath>#define ll int#define N 3005using namespace std;struct edge{ int to,val,next;}e[70005];ll g[N][N],d1[N],d2[N],d[N],p[N],head[N];ll n,m,x,y,z,k,tot,v[N];inline ll read(){ ll k=0; char ch=getchar(); for (;ch<'0'||ch>'9';ch=getchar()); for (;ch>='0'&&ch<='9';ch=getchar()) k=k*10+ch-48; return k;}inline void ins(int x,int y,int u){ e[++tot].to=y; e[tot].val=u; e[tot].next=head[x]; head[x]=tot;}int main(){ n=read(); m=read(); for (int i=1;i<=m;i++){ x=read(); y=read(); z=read(); ins(x,y,z); } for (int i=1;i<=n;i++){ x=read(); p[i]=x; for (int j=1;j<=x;j++){ y=read(); g[y][i]=1; } } memset(d1,120,sizeof(d1)); memset(d,120,sizeof(d)); d1[1]=d2[1]=d[1]=0; v[1]=1; for (int i=1;i<=n;i++){ k=0; ll mi=2100000000; for (int j=1;j<=n;j++) if (v[j]==1&&d[j]<mi){ k=j; mi=d[j]; } v[k]=2; for (int j=1;j<=n;j++) if (g[k][j]&&v[j]!=2){ p[j]--; d2[j]=max(d2[j],d[k]); if (!p[j]&&d1[j]<2100000000){ v[j]=1; d[j]=max(d1[j],d2[j]); } } for (int j=head[k];j;j=e[j].next) if (v[e[j].to]!=2){ d1[e[j].to]=min(d1[e[j].to],d[k]+e[j].val); if (!p[e[j].to]){ v[e[j].to]=1; d[e[j].to]=max(d1[e[j].to],d2[e[j].to]); } } } printf("%d",d[n]);}
阅读全文
0 0
- 【SDOI2010】【BZOJ1922】大陆争霸
- BZOJ1922: [Sdoi2010]大陆争霸
- BZOJ1922: [Sdoi2010]大陆争霸
- bzoj1922: [Sdoi2010]大陆争霸
- bzoj1922: [Sdoi2010]大陆争霸
- 【bzoj1922】[Sdoi2010]大陆争霸
- [bzoj1922][Sdoi2010]大陆争霸 dijkstra
- 【Sdoi2010】【bzoj1922】大陆争霸 最短路
- 【bzoj1922】[Sdoi2010]大陆争霸 最短路变形
- BZOJ1922 洛谷P2446 [SDOI2010]大陆争霸
- 【Dijkstra+贪心】BZOJ1922(Sdoi2010)[大陆争霸]题解
- bzoj1922: [Sdoi2010]大陆争霸 分层图最短路
- bzoj1922 [Sdoi2010]大陆争霸 有限制最短路
- bzoj1922 [Sdoi2010]大陆争霸 带限制的最短路
- 【带限制最短路】BZOJ1922 [Sdoi2010]大陆争霸
- [codevs2192][bzoj1922]大陆争霸
- BZOJ1922 大陆争霸 [最短路]
- [SDOI2010]大陆争霸
- C#学习笔记——类和结构
- bzoj2091[Poi2010]The Minima Game DP
- C++并发编程框架Theron(3)——Theron入门
- 自定义RatingBar控件,实现可自定义星星(或项目所需图片)的宽高,告别使用warp_content导致控件大小不可控
- JDK安装
- bzoj1922: [Sdoi2010]大陆争霸
- 7.12-集体智慧编程-笔记-导言--未完
- 常用的排序算法
- 有趣的程序
- hibernate_核心API
- ubuntu系统中安装RoboMongo
- 连续数组和的最大值
- qt中获取窗口位置和大小
- 树的存储结构之双亲孩子表示法