BZOJ4819 SDOI2017 新生舞會

2022-04-28 20:39:13 字數 825 閱讀 4322

bzoj

luogu

有\(n\)個男孩子和\(n\)個女孩子。他們之間要兩兩結伴跳舞。

已知第\(i\)個男孩子和第\(j\)個女孩子結伴跳舞會有兩個引數\(a_\)和\(b_\)。

現在要求乙個安排方案使得\(a_\)的總和除以\(b_\)的總和的商盡量大。

形式化地,就是求乙個長度為\(n\)的排列\(\\),最大化\(l=\frac^a_}^b_}\)。

分數規劃。

二分乙個答案\(mid\),把所有匹配邊的權值設為\(a_-mid*b_\)。

接下來就是要求是否存在乙個權值和大於\(0\)的完美匹配。

費用流直接上了。跑的好慢啊qaq

#include#include#include#includeusing namespace std;

int gi()

const int n = 105;

const double eps = 1e-8;

struct edgeg[n*n<<2];

int n,a[n][n],b[n][n],head[n<<1],cnt,s,t,vis[n<<1],pe[n<<1];

double dis[n<<1],ans;queueq;

void link(int u,int v,int w,double cost);head[u]=cnt;

g[++cnt]=(edge);head[v]=cnt;

}bool spfa()

int main()

printf("%.6lf\n",l);

return 0;

}

bzoj4819 Sdoi2017 新生舞會

description 學校組織了一次新生舞會,cathy作為經驗豐富的老學姐,負責為同學們安排舞伴。有n個男生和n個女生參加舞會 買乙個男生和乙個女生一起跳舞,互為舞伴。cathy收集了這些同學之間的關係,比如兩個人之前認識沒計算得出 a i j 表示第i個男生和第j個女生一起跳舞時他們的喜悅程度...

BZOJ 4819 Sdoi2017 新生舞會

bzoj 4819 sdoi2017 新生舞會 01分數規劃 費用流 學校組織了一次新生舞會,cathy作為經驗豐富的老學姐,負責為同學們安排舞伴。有n個男生和n個女生參加舞會 買乙個男生和乙個女生一起跳舞,互為舞伴。cathy收集了這些同學之間的關係,比如兩個人之前認識沒計算得出 a i j 表示...

4819 Sdoi2017 新生舞會

4819 sdoi2017 新生舞會 time limit 10 sec memory limit 128 mb submit 352 solved 177 submit status discuss description 學校組織了一次新生舞會,cathy作為經驗豐富的老學姐,負責為同學們安排舞...