1690: [Usaco2007 Dec]奶牛的旅行
来源:互联网 发布:麦克海尔数据 编辑:程序博客网 时间:2024/06/05 05:58
题目链接
题目大意:有向图,点有点权,边有边权,奶牛想要从某点出发,走一些路使得经过的点权和除以边权和最大
题解:经典的最优比例环问题,01分数规划
我的收获:分数规划get
#include <iostream>#include <cstdio>#include <cstring>using namespace std;#define eps 1e-4#define N 1005#define M 5005int n,m,t;int f[N],head[N]; bool flag,mark[N];double dis[N];struct edge{int to,nex,str;double val;}e[M];void add(int u,int v,int w){e[t].to=v,e[t].nex=head[u],e[t].str=w;head[u]=t++;}void rebuild(double x){ for(int i=1;i<=n;i++) for(int j=head[i];j!=-1;j=e[j].nex) e[j].val=e[j].str*x-f[e[j].to];}void spfa(int x){ mark[x]=1; for(int v,i=head[x];i!=-1;i=e[i].nex) if(dis[v=e[i].to]>dis[x]+e[i].val){ if(mark[v]){flag=1;return;} else dis[v]=dis[x]+e[i].val,spfa(v); } mark[x]=0;}bool ok(){ for(int i=1;i<=n;i++) dis[i]=mark[i]=0; flag=0; for(int i=1;i<=n;i++){spfa(i);if(flag) return 1 ;} return 0;}void work(){ double ans; for(double l=0,r=10000;r-l>eps;){ double mid=(l+r)/2.0; rebuild(mid); if(ok()) l=mid,ans=mid; else r=mid; } printf("%.2lf",ans);}void init(){ cin>>n>>m; memset(head,-1,sizeof(head));t=0; for(int i=1;i<=n;i++) scanf("%d",&f[i]); int x,y,z; for(int i=1;i<=m;i++) scanf("%d%d%d",&x,&y,&z),add(x,y,z);}int main(){ init(); work(); return 0;}
阅读全文
0 0
- BZOJ 1690: [Usaco2007 Dec]奶牛的旅行
- 【BZOJ 1690】 [Usaco2007 Dec]奶牛的旅行
- 1690: [Usaco2007 Dec]奶牛的旅行
- bzoj 1690: [Usaco2007 Dec]奶牛的旅行
- 1690: [Usaco2007 Dec]奶牛的旅行
- bzoj 1690: [Usaco2007 Dec]奶牛的旅行 spfa+二分答案
- bzoj1690 [Usaco2007 Dec]奶牛的旅行
- bzoj1690/poj3621[Usaco2007 Dec]奶牛的旅行
- 【bzoj1690】[Usaco2007 Dec]奶牛的旅行
- 【bzoj1690】【Usaco2007 Dec】【奶牛的旅行】【分数规划】
- bzoj 1690: [Usaco2007 Dec]奶牛的旅行(01分数规划--最优比率环)
- 【BZOJ1690】【Usaco2007 Dec】奶牛的旅行 分数规划 判断负环
- bzoj1690[Usaco2007 Dec]奶牛的旅行 01分数规划+spfa(最优比率环)
- bzoj1690 [Usaco2007 Dec]奶牛的旅行(最优比率环,二分答案+spfa判负环)
- BZOJ 1691: [Usaco2007 Dec]挑剔的美食家
- 1691: [Usaco2007 Dec]挑剔的美食家
- BZOJ1691: [Usaco2007 Dec]挑剔的美食家 Treap
- BZOJ 1691 [Usaco2007 Dec]挑剔的美食家
- SSH框架分模块开发
- 用批处理文件自动备份文件及文件夹,并自动删除n天前的文件_DOS/BAT
- VRRP协议介绍
- 一个在线音乐软件的故事(三、音乐从哪里来?)
- mybaits接口式编程
- 1690: [Usaco2007 Dec]奶牛的旅行
- Flask实战2问答平台-发布问答功能完成
- ACM STUDT NOTE(Record every good moment)
- MySQL-基础-DDL、DML、DCL、TCL详解
- 3DES对称算法之双倍长密钥算法和三倍长密钥算法
- springMVC的dispatcherServlet访问路径映射问题
- Python实用黑科技——解包元素(1)
- nuke py 笔记
- 网络流24题-2