二分答案复习

y总二分查找算法模板

在这里插入图片描述

int bsearch_1(int l, int r)
{
    while (l < r)
    {
        int mid = l + r >> 1;
        //性质在右边,区间划分成[l, mid]和[mid + 1, r]
        if (check(mid)) r = mid;
        else l = mid + 1;
    }
    return l;
}

int bsearch_2(int l, int r)
{
    while (l < r)
    {
        int mid = l + r + 1 >> 1;
    	//性质在左边,区间划分成[l, mid - 1]和[mid, r]
        if (check(mid)) l = mid;
        else r = mid - 1;
    }
    return l;
}

数的范围

在这里插入图片描述
在这里插入图片描述

#include <bits/stdc++.h>
using namespace std;
const int N = 1e5+10;
int a[N];

int main(void){
    int n,q;cin>>n>>q;
    for(int i=1;i<=n;i++)cin>>a[i];
    while(q--){
        int x;cin>>x;
        //注:l是左边界下标,r是右边界下标
        int l=1,r=n;
        while(l<r){
            int mid=l+r>>1;
            //
            if(a[mid]>=x)r=mid;
            else l=mid+1;
        }
        if(a[l]!=x){
            cout<<"-1 -1"<<endl;
        }else{ 
            cout<<r-1<<" ";
            l=1,r=n;
            while(l<r){
                int mid=l+r+1>>1;
                if(a[mid]<=x)l=mid;
                else r=mid-1;
            }
            cout<<l-1<<endl;
        }
    }
    return 0;
}

相关推荐

  1. 二分答案刷题

    2024-04-21 14:38:06       60 阅读
  2. 二分答案算法

    2024-04-21 14:38:06       26 阅读
  3. 二分答案刷题4

    2024-04-21 14:38:06       65 阅读
  4. 天秀基础算法 - 二分查找和二分答案

    2024-04-21 14:38:06       33 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-21 14:38:06       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-21 14:38:06       106 阅读
  3. 在Django里面运行非项目文件

    2024-04-21 14:38:06       87 阅读
  4. Python语言-面向对象

    2024-04-21 14:38:06       96 阅读

热门阅读

  1. 后端自测帮助指南

    2024-04-21 14:38:06       36 阅读
  2. AcWing 800. 数组元素的目标和——算法基础课题解

    2024-04-21 14:38:06       38 阅读
  3. RIP协议

    RIP协议

    2024-04-21 14:38:06      37 阅读
  4. 深度学习基础——残差神经网络(ResNet)

    2024-04-21 14:38:06       40 阅读
  5. PID 控制系统如何优化?

    2024-04-21 14:38:06       33 阅读
  6. 深入kubernetes掌握核心概念--Service

    2024-04-21 14:38:06       26 阅读
  7. immutable variables, constants的区别(rust)

    2024-04-21 14:38:06       34 阅读
  8. Kubernetes那点事儿——k8s网络策略

    2024-04-21 14:38:06       32 阅读
  9. 转:Learn Rust the Dangerous Way-系列文章翻译-总述

    2024-04-21 14:38:06       36 阅读