自己的二分查找板子
judge函数是关键

while(l<=r){mid=(l+r)>>1;if(judge(mid))l=mid+1;else r=mid-1;}
cout<<l-1;

lower_bound和upper_bound

lower_bound
ans=(a.begin(), a.end(), x );
求得第一个大于等于x的值的地址
所以求位置时要 -a;

ans=lower_bound(a+1,a+1+n,x)-a;

ub求第一个大于x的值的地址;

luogu p2678 跳石头

#include<bits/stdc++.h>
using namespace std;
#define int long long
int a[1000005];
int n,c,ans,x,s,t;
int l,r,mid;
bool judge(int x){int sum=0;int num=0;for(int i=1;i<=c;i++){if(a[i]-num<x){//**这里的num是关键,如果这个石头要选择被移开才更新num**sum++;}else num=a[i];}if(sum<=t)return true;return false;
}
signed main(){cin>>n>>c>>t;for(int i=1;i<=c;i++){scanf("%d",&a[i]);}r=n;l=0;while(l<=r){mid=(l+r)>>1;if(judge(mid))l=mid+1;else r=mid-1;}cout<<l-1;return 0;
}

算法笔记-二分查找和二分答案相关推荐

  1. 第十九章:二分查找和二分答案

    二分查找 二分的思想在程序设计中有着广泛的应用,例如,排序算法中的快速排序.归并排序,数据结构中的二叉树.堆.线段树等.二分是一种常用且高效的算法,它的基本用途是在单调序列中进行查找和判定操作. 二分 ...

  2. 牛客题霸 二分查找 C++题解/答案

    牛客题霸 二分查找 C++题解/答案 题目描述 请实现有重复数字的有序数组的二分查找. 输出在数组中第一个大于等于查找值的位置,如果数组中不存在这样的数,则输出数组长度加一. 示例1 输入 复制 5, ...

  3. 查找算法--01 顺序查找和二分查找

    目      录 1. 顺序查找 1.1 顺序查找介绍 1.2 顺序查找适用范围 1.3 顺序查找代码实现 2.二分查找 2.1 二分查找介绍 2.2 二分查找适用范围 2.3 二分查找代码实现 2. ...

  4. 算法笔记4.5.2二分扩展:凸多边形的外接圆之最大半径

    算法笔记4.5.2二分扩展:凸多边形的外接圆之最大半径 二分法求外接圆最大半径 题目描述 思路: 代码如下 二分法求外接圆最大半径 题目描述 给出N个线段长度,试将它们头尾相接组合成一个凸多边形,使凸 ...

  5. Python数据结构与算法篇(五)-- 二分查找与二分答案

    1 二分法介绍 1.1 定义 二分查找又称折半查找.二分搜索.折半搜索等,是一种在静态查找表中查找特定元素的算法. 所谓静态查找表,即只能对表内的元素做查找和读取操作,不允许插入或删除元素. 使用二分 ...

  6. python 二分查找_二分查找算法总结

    二分查找的思想是通过每次折半快速找到一个数,例如,我们经常玩的游戏猜数字,在0~1000,随便出一个数字98让对方猜,首先猜500,对方给提示比500大还是小,如果数字小于500,就继续猜250,依次 ...

  7. 二分查找和二分答案(洛谷)

    细节好可怕~ 二分查找算法的细节剖析_JackComeOn的博客-CSDN博客原文:https://www.cnblogs.com/kyoner/p/11080078.html我周围的人几乎都认为二分 ...

  8. 查找算法-(顺序查找、二分查找、插值查找、斐波那契查找)

    1)顺序查找或叫线性查找 就是顺序遍历匹配 2)二分查找 package search;public class BinarySearch {/*** 二分查找数组必须有序*//**** @param ...

  9. python递归实现二分查找_python二分查找算法的递归实现

    本文实例讲述了python二分查找算法的递归实现方法.分享给大家供大家参考,具体如下: 这里先提供一段二分查找的代码: def binarySearch(alist, item): first = 0 ...

  10. python递归实现二分查找_python二分查找算法的递归实现方法

    本文实例讲述了python二分查找算法的递归实现方法.分享给大家供大家参考,具体如下: 这里先提供一段二分查找的代码: def binarySearch(alist, item): first = 0 ...

最新文章

  1. python manager详解_Python通过Manager方式实现多个无关联进程共享数据
  2. 需求分析--12章 过程建模
  3. 将DataFrame中的每一列分别做归一化处理的函数实现
  4. ASP.NET Web API 处理架构
  5. 收藏这些芯片原厂的代码仓库
  6. linux 2.6 添加系统调用,在Fedora 13里编译内核(linux-2.6.36)+添加系统调用
  7. 分类算法学习(一)——KNN算法的原理及简单实现
  8. idea 从svn 下载项目
  9. 阿里 OSS AccessDenied You are denied by bucket referer policy.
  10. 江湖有故人!欢迎来到程序员的江湖
  11. ubuntu解决微信无法输入中文
  12. 大力哥谈 DALI - DALI 电源调试和配置参数揭秘
  13. hive的引擎mapreduce、tez和spark三者比较
  14. 5G无人机,到底有什么特别?
  15. 俄罗斯电商平台ozon的崛起,卖家可以使用测评补单方式打造爆款吗?
  16. RabbitMQ几种工作模式,实现延时消息的两种案例
  17. 5.24黄金短线上涨能否继续做空?今日如何布局
  18. 网络教育计算机统考40分单选,2021年6月网络教育统考《计算机应用基础》统考必过题库最全试题及答案...
  19. Axure原型——能在手机上演示的高保真移动端元件库
  20. 50hz 60hz 级联 陷波器,卫星导航接收机陷波器级联抑制窄带干扰研究

热门文章

  1. linux tab 缩进,codemirror TAB 缩进问题记录
  2. word wrap java控制台_word wrap 解惑
  3. 数据库习题(填空题五)
  4. C++:DFS求最优路径
  5. Jupyter notebook、JypterLab的本地安装与使用
  6. python中字符串转元组时的小技巧
  7. php 编译 sass,如何在Symfony 3中使用纯PHP编译SASS(scss)
  8. activity 工作流_智能风控决策引擎系统可落地实现方案(二)决策流实现
  9. 点击列表高亮_办公小技巧:妙用条件格式 高亮显示查询结果
  10. 全局 快捷键_表格快捷键