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

网站icp备案费用免费可商用素材网站

网站icp备案费用,免费可商用素材网站,电脑买编程代码做网站,163建筑网站题目 进击的奶牛 题意 通过二分查找算法找到一个最小间距x,使得在数组a中选出的k个数两两之间的间距都不小于x,并且x尽可能大。最后输出这个最大的x值。 思路 程序通过循环依次获取了n个整数,存储在数组a中。.然后,程序对数组a进…

题目

进击的奶牛

题意

  1. 通过二分查找算法找到一个最小间距x,使得在数组a中选出的k个数两两之间的间距都不小于x,并且x尽可能大。最后输出这个最大的x值。

思路

  1. 程序通过循环依次获取了n个整数,存储在数组a中。
  2. .然后,程序对数组a进行了排序,以便进行二分查找。
  3. 接着,程序使用二分查找算法来寻找满足条件的最小间距。在二分查找的过程中,通过调用check函数来判断当前的间距m是否满足条件。
  4. 在check函数中,程序遍历数组a,计算相邻元素之间的间距,并统计满足条件的间距数量。
  5. 最后,程序输出满足条件的最小间距ans。

坑点

  1. l和r边界问题

算法一:二分

实现步骤
  1. 程序通过循环依次获取了n个整数,存储在数组a中。
  2. .然后,程序对数组a进行了排序,以便进行二分查找。
  3. 接着,程序使用二分查找算法来寻找满足条件的最小间距。在二分查找的过程中,通过调用check函数来判断当前的间距m是否满足条件。
  4. 在check函数中,程序遍历数组a,计算相邻元素之间的间距,并统计满足条件的间距数量。
  5. 最后,程序输出满足条件的最小间距ans。
代码
#include<bits/stdc++.h>
using namespace std;
int n,k,a[100010],ans;
bool check(int x)
{int d=a[1],sum=1;for(int i=2;i<=n;i++){if(a[i]-d>=x){sum++;d=a[i];} }return sum>=k;
}
int main()
{cin>>n>>k;for(int i=1;i<=n;i++){cin>>a[i];}int l=1,r=1e9;sort(a+1,a+n+1);while(l<=r){int m=l+r>>1;if(check(m)){ans=m;l=m+1;}else{r=m-1;}}cout<<ans;return 0;
}
http://www.yayakq.cn/news/908397/

相关文章:

  • 注册网站用于跳转虚拟货币网站违法医疗网站前置审批
  • 模板建站多少钱网页制作多少钱一个页面
  • 长沙百度网站建设太仓有没有做网站建设的
  • 网站建设外包公司容易被客户投诉吗私人音乐服务器
  • 买域名的网站有哪些计算机网络搭建
  • 网站内怎样做关键词有效果知科网站
  • 公司网站数据分析做网站需要会什么软件
  • 做商标网站建设校园门户网站方案
  • 做网站需要什么专业方向的员工wap手机商城网站源码
  • 网站导读怎么做我是站长网
  • 网站建设怎么添加评论建设部网站 注册违规
  • 需要外包团队做网站怎么提需求搜索点击软件
  • 小型网站有哪些广之旅自由通卡特约商家
  • 制作个人网站素材网站建设需要具备的能力
  • wordpress如何修改网站域名网站建设与网页设计从入门到精通
  • 新浪sae可以做网站么专业搭建网站
  • 重庆市建设公共资源交易中心网站做兼职在线抠图网站
  • 企业网站的维护工作要怎么做搭建什么平台如何表达
  • 有哪些网站是用vue做的舆情监测系统的报价
  • 中国建设招标网是私人网站吗网站建设技术方面的体会
  • 硬件开发语言seo网站建设厦门
  • 免费ppt模板下载大全网站长沙建设网站的公司
  • 商城网站建设服务哪家好李沧网站建设公司
  • 怎样购买网站域名网站建设营销的企业
  • 自己有网站怎么做点卡?中国空间站成为全人类太空之家
  • 网站建立的重要性电子商务网站建设各项费用预算是多少
  • 门户网站那个程序比较遵义工作网招聘信息网
  • 笑话类网站 源代码2021中国十大软件公司排名
  • 太原网站seo服务武安 制作网站
  • 江苏优质网站制作公司线上产品推广方案