什么是0/1分数规划?

大概就是这样一类问题:

有一堆物品,选择一个物品都有一个收益ai,有一个代价bi,

选择若干个(也可能有限制)物品,

使得算法——0/1分数规划最小(大)

看上去很难的样子?

其实化一下式子就变简单啦!

我们设算法——0/1分数规划,显然当满足式子的x最小的时候,算法——0/1分数规划就最小了

我们移一下项:

算法——0/1分数规划

--->$\sum_{i = 1}^{n} a[i] - x * b[i] \le 0$

相当于就只用判断这个式子的真假了~~~

显然这个式子是符合二分条件的,因此我们可以二分x的值

分数规划的题不管是取最大还是最小都是二分+check()

但是每道题对于合法的选择集合有不同的限制,比如必须是环,必须是树,必须……

诸如此类的很多,这个时候就需要根据具体的题目来调整check函数了,

比如如果要求是环,可以将check变成找负环,要是没要求还可以直接贪心,

分数规划只是提供了一个二分的方法,

以下为几道例题(我做过的):

[HNOI2009]最小圈

[APIO2017]商旅

[SDOI2017]新生舞会

 

相关文章:

  • 2021-11-06
  • 2021-11-18
  • 2018-12-25
  • 2021-09-24
  • 2021-10-02
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-02-11
  • 2021-08-25
  • 2022-01-12
  • 2021-08-29
  • 2021-08-15
  • 2022-03-01
相关资源
相似解决方案