洛谷 P3199 [HNOI2009]最小圈】的更多相关文章

P3199 [HNOI2009]最小圈 题目背景 如果你能提供题面或者题意简述,请直接在讨论区发帖,感谢你的贡献. 题目描述 对于一张有向图,要你求图中最小圈的平均值最小是多少,即若一个圈经过k个节点,那么一个圈的平均值为圈上k条边权的和除以k,现要求其中的最小值 输入输出格式 输入格式: 第一行2个正整数,分别为n和m 以下m行,每行3个数,表示边连接的信息, 输出格式: 一行一个数,表示最小圈的值,保留8位小数. 输入输出样例 输入样例#1: 4 5 1 2 5 2 3 5 3 1 5 2…
题意 题目链接 Sol 暴力01分数规划可过 标算应该是这个 #include<bits/stdc++.h> #define Pair pair<int, double> #define MP(x, y) make_pair(x, y) #define fi first #define se second //#define int long long #define LL long long #define Fin(x) {freopen(#x".in",&q…
裸题,第二个权值是自己点的个数.二分之后用spfa判负环就行了. 题目描述 考虑带权的有向图G=(V,E)G=(V,E)G=(V,E)以及w:E→Rw:E\rightarrow Rw:E→R,每条边e=(i,j)(i≠j,i∈V,j∈V)e=(i,j)(i\neq j,i\)(≤i<k)(c_i,c_{i+})(\le i<k)(ci​,ci+​)(≤i<k)和(ck,c1)(c_k,c_1)(ck​,c1​)都在EEE中,这时称kkk为圈ccc的长度同时令ck+=c1c_{k+}=c_…
传送门 据rqy说有这么一个结论\[ans=\min_{v \in V,F_n(v)\neq \infty} \max_{0 \leq k \leq n - 1} \left[\frac{F_n(v)-F_k(v)}{n-k}\right]\qquad\] 其中新建一个节点\(S\)向所有点连边,\(F_i(v)\)表示从\(S\)开始经过恰好\(i\)条边到达\(v\)的最短路 代码里\(F\)的下标都减了\(1\) 证明这里 //minamoto #include<bits/stdc++.h…
1486: [HNOI2009]最小圈 Time Limit: 10 Sec  Memory Limit: 64 MBSubmit: 1022  Solved: 487[Submit][Status] Description 最开始写floyd求负环结果TLE了,改成dfs后速度变成原来的100+倍.反正还是比较神奇. #include<iostream> #include<cstdio> #include<cstring> #include<algorithm&…
二分答案m, 然后全部边权减掉m, 假如存在负圈, 那么说明有平均值更小的圈存在. 负圈用dfs判断. --------------------------------------------------------------------------- #include<bits/stdc++.h>   #define rep(i, n) for(int i = 0; i < n; ++i) #define clr(x, c) memset(x, c, sizeof(x)) #defi…
BZOJ_1486_[HNOI2009]最小圈_01分数规划 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   二分答案,边权减去答案,判负环即可. 然而spfa判负环会T掉,于是我使用了dfs判负环的方法. dfs判负环代码: void dfs(int x) { vis[x]=1; int i; for(i=head[x];i&&!ok;i=…
题面:[HNOI2009]最小圈 题目描述: 考虑带权的有向图\(G=(V,E)\)以及\(w:E\rightarrow R\),每条边\(e=(i,j)(i\neq j,i\in V,j\in V)\)的权值定义为\(w_{i,j}\),令\(n=|V|\).\(c=(c_1,c_2,\cdots,c_k)(c_i\in V)\)是\(G\)中的一个圈当且仅当\((c_i,c_{i+1})(1\le i\lt k)\)和\((c_k,c_1)\)都在\(E\)中,这时称\(k\)为圈\(c\)…
http://www.lydsy.com/JudgeOnline/problem.php?id=1486 二分答案 dfs版spfa判负环 #include<queue> #include<cstdio> #include<cstring> #include<iostream> #define N 3001 #define M 10001 using namespace std; int n; int tot,front[N],nxt[M],to[M]; d…
[BZOJ1486][HNOI2009]最小圈 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 题解:题意给的实在不能太明显了,直接上分数规划.二分答案mid,将边权改为(原边权-mid),然后spfa判断是否有负环,若有则调整上界,否则调整下界. 然而码完一发交上去TLE,看了题解发现这题居然要用DFS版的SPFA!有谁能一上来就想到用DFS的我也是…