二分答案的思考

今天做完的了洛谷的二分答案的提单,感触颇深,就此写一写。

二分答案是什么呢?

先思考一个问题,二分究竟它的本质是用来干嘛的?
是用来查找的。

例如:一个有序数组,若要找到某一个数,就去二分比较,logn次后找到一个数。

这就是二分的本质,逐步去筛出答案的位置。这是二分的本质,二分答案便在此基础上建立起来。

如果你知道某道题的答案是个唯一确定的整数,而且范围在1~n之间,那么我们可不可以用二分呢?

当然可以。
那么和例题的有序数组对应的是什么呢?
是从1~n的数
二分比较对应的是什么呢?
是判断当前这个数是否满足某种条件的的一个judge函数(或者是check函数)

那么关键就是这个judge函数,其作用只有一个:就是判断当前已知的这个mid是否满足条件——judge的不确定性就决定了某些二分题目的困难。

那是否二分答案就是只能针对整数呢?
当然不是

在需要的问题的答案是一个确定已知的,就可以进行,小数的出现只需要限定fabs(r-l)<=eps //eps就是一个你需要的精度

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值