http://www.lydsy.com/JudgeOnline/problem.php?id=1486

二分答案

dfs版spfa判负环

#include<queue>
#include<cstdio>
#include<cstring>
#include<iostream>#define N 3001
#define M 10001using namespace std;int n;int tot,front[N],nxt[M],to[M];
double val[M];double Val[M];double dis[N];
bool vis[N];bool tag;queue<int>q;int s;void read(int &x)
{x=0; char c=getchar();while(!isdigit(c)) c=getchar();while(isdigit(c)) { x=x*10+c-'0'; c=getchar(); }
}void add(int u,int v,double w)
{to[++tot]=v; nxt[tot]=front[u]; front[u]=tot; val[tot]=w;
}    void spfa(int u)
{//if(tag) return;int t;for(int i=front[u];i;i=nxt[i]){t=to[i];if(dis[u]+Val[i]<dis[t]){dis[t]=dis[u]+Val[i];if(!vis[t]){vis[t]=true;spfa(t);vis[t]=false;if(tag) return;}else {tag=true;return;}}}
}bool check(double mid)
{for(int i=1;i<=tot;++i) Val[i]=val[i]-mid;tag=false;for(int i=1;i<=n;++i){    for(int j=1;j<=n;++j) dis[j]=0;vis[i]=true;spfa(i);vis[i]=false;if(tag) return true;}return false;
}int main()
{int m;read(n); read(m);int u,v; double w;while(m--){read(u); read(v); scanf("%lf",&w);add(u,v,w);}double l=-1e6,r=1e6,mid,ans;int T=55;while(T--){mid=(l+r)/2;if(!check(mid)) ans=l,l=mid;else r=mid;}printf("%.8lf",ans);
}

1486: [HNOI2009]最小圈

Time Limit: 10 Sec  Memory Limit: 64 MB
Submit: 2715  Solved: 1304
[Submit][Status][Discuss]

Description

Input

Output

Sample Input

4 5
1 2 5
2 3 5
3 1 5
2 4 3
4 1 3

Sample Output

3.66666667

转载于:https://www.cnblogs.com/TheRoadToTheGold/p/8424383.html

bzoj千题计划227:bzoj1486: [HNOI2009]最小圈相关推荐

  1. BZOJ 2150. 部落战争(最小路径覆盖问题)【BZOJ千题计划】

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 刷题就图一乐 题目链接 https://hydro.ac/d/bzoj/p/2150 是 hydro ...

  2. BZOJ 2151 种树(可反悔贪心,链表)【BZOJ千题计划】就图一乐

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 题目链接 https://hydro.ac/d/bzoj/p/2151 是 hydro 的 BZOJ ...

  3. BZOJ 1799 [Ahoi2009] self 同类分布(数位DP)【BZOJ千题计划(quexin】

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 题目链接 https://hydro.ac/d/bzoj/p/1799(样例时限设置有问题,应该为 2 ...

  4. bzoj千题计划143:bzoj1935: [Shoi2007]Tree 园丁的烦恼

    http://www.lydsy.com/JudgeOnline/problem.php?id=1935 二维偏序问题 排序x,离散化树状数组维护y #include<cstdio> #i ...

  5. bzoj千题计划207:bzoj1879: [Sdoi2009]Bill的挑战

    http://www.lydsy.com/JudgeOnline/problem.php?id=1879 f[i][j] 表示匹配了i个字符,匹配字符串的状态为j的方案数 枚举下一个字符是什么 计算加 ...

  6. bzoj千题计划116:bzoj1025: [SCOI2009]游戏

    http://www.lydsy.com/JudgeOnline/problem.php?id=1025 题目转化: 将n分为任意段,设每段的长度分别为x1,x2,-- 求lcm(xi)的个数 有一个 ...

  7. bzoj千题计划203:bzoj3994: [SDOI2015]约数个数和

    http://www.lydsy.com/JudgeOnline/problem.php?id=3994 设d(x)为x的约数个数,给定N.M,求 用到的一个结论: 证明: 枚举n的约数i,枚举m的约 ...

  8. bzoj千题计划141:bzoj3532: [Sdoi2014]Lis

    http://www.lydsy.com/JudgeOnline/problem.php?id=3532 如果没有字典序的限制,那么DP拆点最小割即可 加上字典序的限制: 按c从小到大枚举最小割边集中 ...

  9. bzoj千题计划126:bzoj1038: [ZJOI2008]瞭望塔

    http://www.lydsy.com/JudgeOnline/problem.php?id=1038 本题可以使用三分法 将点按横坐标排好序后 对于任意相邻两个点连成的线段,瞭望塔的高度 是单峰函 ...

最新文章

  1. 【转】[C# 基础知识系列]专题四:事件揭秘
  2. Java集合类学习-LinkedList, ArrayList, Stack, Queue, Vector
  3. NYOJ 20 吝啬的国度(深搜)
  4. 在Prefetcher中取消robots.txt的限制
  5. php.ini文件中的include_path设置
  6. number six
  7. 统计HDFS文件数量,大小,以及在某范围大小的文件数量
  8. 微服务 注册中心的作用_102,谈谈微服务注册中心zookeeperamp;Eureka
  9. 如何检测支付宝接口中notify_url.php有没有返回,微信小程序支付成功,但是notify_url接收不到回调如何排查此问题?...
  10. urllib.request.urlretrieve()函数
  11. Python之常用函数小结
  12. c mysql 包含字符串_Mysql字符串字段判断是否包含某个字符串的2种方法
  13. 《Ray Tracing from the Ground Up》中的坐标系是怎么确定的
  14. Newtonsoft.Json取json字符串中的值得用法 看红色的部分就可以了
  15. java操作k8s api报错:SSLHandshakeException: should not be presented in certificate_request
  16. 43. 盘点那些必问的数据结构算法题之二叉树基础
  17. Redis删除键命令: 入门用del,老手用unlink,有何区别?
  18. seqkit根据基因id_基因家族分析保姆级教程(分子进化)-生信小白自学之路
  19. QGraphicsItem释放内存——QGraphicsRectItem
  20. Hive技巧-选出某些列其余所有的列

热门文章

  1. 生命游戏c语言代码,c++生命游戏源码
  2. linux系统写一个脚本,编写一个简单的linuxshell脚本
  3. Linux第二周学习笔记(1)
  4. 解决jfinal-ext CsvRender 中文乱码
  5. ten sentences(1-10)
  6. face 3000 C++ 代码理解
  7. Ubuntu 20.04 更新,界面美化及安装搜狗输入法
  8. ROS学习笔记10(创建一个ROS消息和服务)
  9. rfid在高速公路管理中的应用_RFID亮灯电子标签在仓储管理中的应用
  10. 长时间使用s档有危害吗_空调长时间不清洗竟有这么多危害 你知道吗?