【二分查找】POJ2456-Aggressive cows
2024-08-24 22:23:27
【题目大意】
有N间牛舍和M头牛,告诉你每个牛舍的位置,求出两头牛之间最小距离的最大值。
【思路】
二分判断两头牛之间的最小距离d,通过贪心法进行验证。
#include<iostream>
#include<cstdio>
#include<cstring>
#include<cmath>
#include<algorithm>
using namespace std;
const int MAXN=+;
int n,m;
int pos[MAXN]; int whether(int d)
{
int now=;
int nowpos=pos[]+d;
for (int i=;i<m;i++)
{
while (pos[now]<nowpos && now<n) now++;
if (now==n)
{
return ;
}
nowpos=pos[now]+d;
}
return ;
} int main()
{
scanf("%d%d",&n,&m);
for (int i=;i<n;i++) scanf("%d",&pos[i]);
sort(pos,pos+n); int lb=,ub=pos[n-];
while (ub-lb>)
{
int mid=(lb+ub)/;
if (whether(mid)) lb=mid;
else ub=mid;
}
cout<<lb<<endl;
return ;
}
最新文章
- SharePoint2016安装的过程的”Microsoft.SharePoint.Upgrade.SPUpgradeException”错误解决方法
- 关闭rdlc报表打印预览后,关闭客户端,抛出异常“发生了应用程序级的异常 将退出”
- 用js判断时间的先后顺序
- FreeBSD修改root密码错误passwd: pam_chau(www.111cn.net)thtok(): error in service module from:http://www.111cn.net/sys/freebsd/66713.htm
- windows 2008 怎么对外开放端口
- IntPtr问题
- 通过Java字节码发现有趣的内幕之String篇(上)(转)
- java 实例方法和类方法的区别
- Oracle442个应用场景-----------角色管理
- 纯CSS实现箭头、气泡让提示功能具有三角形图标(简单实例)
- freemarker之list
- Linux命令--tree
- Url的拦截问题
- 寻找“最好”(4)——不等约束和KKT条件
- Linux 下安装JDK1.8
- SPOJ 375 Query on a tree(树链剖分)
- 重温SQL——行转列,列转行
- React-Native进阶_1.抽取样式和组件
- set_exception_handler 自定义异常处理
- 【Mac + Appium + Python3.6学习(四)】之常用的IOS自动化测试API总结
热门文章
- js 数组&;字符串 去重
- jQuery实现用户头像裁剪插件cropbox.js
- python中BeautifulSoup模块
- 盲注脚本2.基于bool
- linux信号Linux下Signal信号太详细了,终于找到了
- python并发模块之concurrent.futures(二)
- 1002: 当不成勇者的Water只好去下棋了---课程作业---图的填色
- HDU 6119 小小粉丝度度熊 双指针
- canvas制作柱形图/折线图/饼状图,Konva写动态饼状图
- FineReport——决策系统组件API