当前位置: 首页 > news >正文

题单:二分查找(==x个数)

样例 #1

样例输入 #1

10
7 2 1 3 5 9 5 1 8 1
5
0
1
4
9
10

样例输出 #1

0
3
0
1
0

提示

所有数据满足:

#include<bits/stdc++.h>
using namespace std;
int a[50000005];
int bin_small(int l,int r,int key)
{int ans=-1;while(l<=r){int mid=(l+r)/2;if(a[mid]>key){r=mid-1;}else if(a[mid]<key){l=mid+1;}else if(a[mid]==key){ans=mid;r=mid-1;}}return ans;
}
int bin_big(int l,int r,int key)
{int ans=-1;while(l<=r){int mid=(l+r)/2;if(a[mid]>key){r=mid-1;}else if(a[mid]<key){l=mid+1;}else if(a[mid]==key){ans=mid;l=mid+1;}}return ans;
} 
int main(){int n;scanf("%d",&n);int x;for(int i=1;i<=n;i++){scanf("%d",&a[i]);} sort(a+1,a+n+1);int t;scanf("%d",&t);while(t--){scanf("%d",&x);if(bin_big(1,n,x)==-1){cout<<0<<endl;continue;}cout<<bin_big(1,n,x)-bin_small(1,n,x)+1<<endl;}return 0;
}

相关文章:

  • 【Linux篇】细品环境变量与地址空间
  • linux 错误码总结
  • aruco::detectMarkers中什么情况下marker会被判定为rejectedMarkers
  • Linux向文件每行结尾追加指定内容的方法
  • [一生一芯] 如何基于iSTA 分析时序
  • 看板更新不及时该如何规范
  • 校园二手交易平台(微信小程序版)
  • 解析 Go 语言中 time 包在实现定时任务时的易错点
  • LeetCode 146.LRU缓存
  • 边缘计算医疗风险自查APP开发方案
  • 详解pytorch
  • Day50 Python打卡训练营
  • 二刷苍穹外卖 day01
  • LAMP-Cloud与RuoYi-Cloud技术架构对比
  • 鹰盾播放器:安全与用户体验的精妙平衡
  • 从课堂到科研,GpuGeek引领高校AI资源的创新变革
  • 互联网大数据求职面试:从Zookeeper到数据挖掘的技术探讨
  • 笔记——学习HTTP协议
  • 前端技术 HTML iframe 详细解读
  • python 本地运行Qwen3-Embedding-0.6B 模型提供API接口
  • 天猫商城买卖/宁波seo网络推广报价
  • 网络营销的主要形式有建设网站/东莞市网络seo推广价格
  • 新建的网站怎么做seo优化/厦门头条今日新闻
  • wordpress 短信/网站网络推广优化
  • 辽阳企业网站建设价格/网络推广优化招聘
  • 北京大型网站开发/百度一下网页版浏览器