前言:
今天才知道有01分数规划这个东西TAT
原来我都叫实数二分的
01分数规划的基本模型:
(1)基础01分数规划
(2)最优比率生成树
(3)最优比率生成环
01分数规划问题形式:
01分数规划是这样一类问题
给你n个二元组,这个两个元素设为a[i] ,b[i], a[i]是得到这个物品所能得到的价值,b[i]是得到这个物品所付出的价值,让你求这样一个极值。
即
R=∑ni=1(a[i]/b[i])
R
=
∑
i
=
1
n
(
a
[
i
]
/
b
[
i
]
)
问题解决方法:
如果我们二分一个值
mid=∑ni=1(a[i]/b[i])
m
i
d
=
∑
i
=
1
n
(
a
[
i
]
/
b
[
i
]
)
如果此时mid答案可行 则必有
∑ni=1(a[i]−b[i]∗mid)>=0
∑
i
=
1
n
(
a
[
i
]
−
b
[
i
]
∗
m
i
d
)
>=
0
此时我们可以将mid继续上调,反之则下调,套用二分答案即可得出解.
还有一种做法是在原答案的基础上进一步加深,直到满足精度为止。
然而我不会,不会有出题人这么丧心病狂卡二分吧qwq
题目实例:
第一类模型:
POJ 2976
第二类模型:
POJ 2728
第三类模型:
POJ 3621
结合网络流模型:
SDOI 2017 新生舞会