【题目大意】

有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 ;
}

最新文章

  1. SharePoint2016安装的过程的”Microsoft.SharePoint.Upgrade.SPUpgradeException”错误解决方法
  2. 关闭rdlc报表打印预览后,关闭客户端,抛出异常“发生了应用程序级的异常 将退出”
  3. 用js判断时间的先后顺序
  4. FreeBSD修改root密码错误passwd: pam_chau(www.111cn.net)thtok(): error in service module from:http://www.111cn.net/sys/freebsd/66713.htm
  5. windows 2008 怎么对外开放端口
  6. IntPtr问题
  7. 通过Java字节码发现有趣的内幕之String篇(上)(转)
  8. java 实例方法和类方法的区别
  9. Oracle442个应用场景-----------角色管理
  10. 纯CSS实现箭头、气泡让提示功能具有三角形图标(简单实例)
  11. freemarker之list
  12. Linux命令--tree
  13. Url的拦截问题
  14. 寻找“最好”(4)——不等约束和KKT条件
  15. Linux 下安装JDK1.8
  16. SPOJ 375 Query on a tree(树链剖分)
  17. 重温SQL——行转列,列转行
  18. React-Native进阶_1.抽取样式和组件
  19. set_exception_handler 自定义异常处理
  20. 【Mac + Appium + Python3.6学习(四)】之常用的IOS自动化测试API总结

热门文章

  1. js 数组&amp;字符串 去重
  2. jQuery实现用户头像裁剪插件cropbox.js
  3. python中BeautifulSoup模块
  4. 盲注脚本2.基于bool
  5. linux信号Linux下Signal信号太详细了,终于找到了
  6. python并发模块之concurrent.futures(二)
  7. 1002: 当不成勇者的Water只好去下棋了---课程作业---图的填色
  8. HDU 6119 小小粉丝度度熊 双指针
  9. canvas制作柱形图/折线图/饼状图,Konva写动态饼状图
  10. FineReport——决策系统组件API