摘要:
思路:这题的结论得要看amber的论文,结论就是将求f(x)/b(x)最小转化为求min(f(x)-b(x)*λ),其中x为S集的解空间,f(x)为解的边权和,b(x)为解的边数,λ=f(x)/b(x)。λ*为最优解,当且仅当(x属于S)∑min(f(x)-b(x)*λ)==0;故可以将原边权的权值改为w-λ;对λ进行二分枚举,找出答案。#include#include#include#include#include#define N 510#define M 50010#define inf 1e9using namespace std;const double eps=1e-9;struc 阅读全文
摘要:
思路:每次枚举删除一个点,然后对剩下的点求出关键点,判断删除哪个关键点获得的连通分支数最大。#include#include#include#include#include#include#define Maxn 5100#define Maxm 50100#define inf 0x7fffffffusing namespace std;map p[Maxn];int Index[Maxn],dfn[Maxn],low[Maxn],vi[Maxn],compent[Maxn],e,n,lab,Max=0;struct Edge{ int from,to,next;}edge[Maxm]... 阅读全文