首页 > 其他 > 详细

QBXTD2

时间:2019-07-15 21:08:57      阅读:80      评论:0      收藏:0      [点我收藏+]

话说lyd昨天没讲完他的该死的贪心,所以今天继续讲

技术分享图片

贪心思想是考虑AB是最快的人,CD是最慢的人,要把CD两个人送过河,只有两种方案,牵扯到四个人,并且n个规模的原问题化成了n-2个规模的子问题

那么最后有两个情况,四个人和三个人,如果是四个人就直接按刚才的方法搞一搞就好了,如果是三个人的话,就有两个方案,一个是A来回送,一个是AB一起操作,就是在两个之间取min就好了

技术分享图片

 

贪心算法在骗分时的运用主要集中在两点:

1.贪心算法失效时该如何补救?

2.如何利用贪心算法来提升自己的一个暴力算法?

 

1.贪心算法与随机化算法的结合(例如模拟退火)

在决策时有概率接受比当前情况差的方向

在搜索到结果时以一定概率跳出当前解,重新开始贪心

在贪心开始的时候,利用随机化选择多个起点开始贪心,取其最小值

2.贪心算法与搜索算法的结合

通过一定程度地选择次优解来计算答案,k-优搜索策略

结合贪心与搜索的策略,在大范围内贪心(用贪心剪枝),收束到小范围后开始搜索

分治:

分治分治,分而治之,分治算法就是将一个大问题划分为几个更小规模的问题并加以解决,通过解决子问题最后解决总问题。

分治算法在OI中的运用主要在两个方面:

1.基于二分查找、三分查找的运用

2.将题目划分为更细小的子问题的运用

我们将按顺序来讲解这两个方面

 

二分的本质是:在一个有序区间内确定一个边界,在边界的一边的元素满足某种性质,而另外一边不满足;

故二分经常用于解决如下类型的问题:

1.简单的二分查找

2.二分答案(即求一个单调函数在满足某个性质下的最值)

3.最值的最值(最常见的二分题类型)

 技术分享图片

 

差分前缀和加二分

 

 技术分享图片

 

 技术分享图片

 

你现在需要给小A CntA 个自然数,给小B CntB 个自然数

但是给小A的自然数不能被x整除

同理给小B的自然数不能被y整除

请问需要给的最大的那个自然数最小是多少?

 

二分答案 v ,因为 a 不要被 x 整除的数,所以我们可以

先把 被 x 整除的数但不被 y 整除 给b,

再把 被 y 整除的数但不被 x 整除 给a。

然后剔除所有被 x*y 整除的数

剩下的数与 x 和 y 都互素,判一下能不能好好的分配就可以

 

QBXTD2

原文:https://www.cnblogs.com/this-is-M/p/11190862.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!