题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=586

疯牛

时间限制: 1000 ms  |  内存限制: 65535 KB
难度: 4
描述
农夫 John 建造了一座很长的畜栏,它包括N (2 <= N <= 100,000)个隔间,这些小隔间依次编号为x1,...,xN (0 <= xi <= 1,000,000,000).
但是,John的C (2 <= C <= N)头牛们并不喜欢这种布局,而且几头牛放在一个隔间里,他们就要发生争斗。为了不让牛互相伤害。John决定自己给牛分配隔间,使任意两头牛之间的最小距离尽可能的大,那么,这个最大的最小距离是什么呢?

输入
有多组测试数据,以EOF结束。
第一行:空格分隔的两个整数N和C
第二行——第N+1行:分别指出了xi的位置
输出
每组测试数据输出一个整数,满足题意的最大的最小值,注意换行。
样例输入
5 3
1
2
8
4
9
样例输出
3

这几天在搞贪心,顺便A了一道题目。

看到题目首先想到的是栅栏总长度除以(牛的数目-1),就是每个牛的长度,然后按照这个长度为界限依次按最接近的值,遍历找出其中最小值。后来发现不对。

然后看了讨论区说二分搜索+贪心

就想到二分搜索答案,数据范围200000,可以,依次贪心直到找出一个最大的最小值。

看来二分搜索很实用啊。需要多加练习。

代码:

#include <cstdio>
#include <algorithm>
using namespace std;typedef long long LL;
LL a[101000];
int n,c;
int chack(int x)
{int cas=1,ch=a[0];for(int i=1;i<n;i++){if(a[i]-ch>=x){ch=a[i];cas++;}if(cas>=c)return true;}return false;
}
int reaerch()  //二分搜索
{int l=0,r=a[n-1]-a[0],mid;while(l<=r){mid=(l+r)/2;if(chack(mid))l=mid+1;elser=mid-1;}return l-1;
}
int main()
{while(~scanf("%d%d",&n,&c)){for(int i=0;i<n;i++)scanf("%lld",&a[i]);std::sort(a,a+n);printf("%d\n",reaerch());}return 0;
}

nyoj 疯牛(二分搜索+贪心)相关推荐

  1. nyoj914Yougth的最大化(二分搜索 + 贪心)

    Yougth的最大化  时间限制:1000 ms | 内存限制:65535 KB  难度:4  描述  Yougth现在有n个物品的重量和价值分别是Wi和Vi,你能帮他从中选出k个物品使得单位重量的价 ...

  2. NYOJ 586 疯牛 POJ 2456(二分搜索 + 贪心)

    疯牛 时间限制:1000 ms  |  内存限制:65535 KB 难度:4 描述 农夫 John 建造了一座很长的畜栏,它包括N (2 <= N <= 100,000)个隔间,这些小隔间 ...

  3. NYOJ 914 Yougth的最大化(二分搜索 + 贪心)

    Yougth的最大化 时间限制:1000 ms  |  内存限制:65535 KB 难度:4 描述 Yougth现在有n个物品的重量和价值分别是Wi和Vi,你能帮他从中选出k个物品使得单位重量的价值最 ...

  4. POJ 2456 疯牛(二分+贪心)

    疯牛 时间限制: 1000 ms  |  内存限制: 65535 KB 难度: 4 描述 农夫 John 建造了一座很长的畜栏,它包括N (2 <= N <= 100,000)个隔间,这些 ...

  5. NYOJ - 非洲小孩(贪心)

    http://nyoj.top/problem/1036 内存限制:64MB 时间限制:1000ms 题目描述: 家住非洲的小孩,都很黑.为什么呢? 第一,他们地处热带,太阳辐射严重. 第二,他们不经 ...

  6. nyoj 208 Supermarket(贪心)

    Supermarket 时间限制:1000 ms  |  内存限制:65535 KB 难度:4 描述 A supermarket has a set Prod of products on sale. ...

  7. cqyz oj | 化装晚会 | 二分搜索 | 贪心

    Description 万圣节又到了!FJ打算带他的奶牛去参加一个化装晚会,但是FJ只做了一套能容下两头总长不超过 S 的牛的恐怖服装.FJ养了 N 头按 1..N 顺序编号的奶牛,编号为 i 的奶牛 ...

  8. NYOJ疯牛【二分】

    疯牛 时间限制: 1000 ms  |  内存限制: 65535 KB 难度: 4 描述 农夫 John 建造了一座很长的畜栏,它包括N (2 <= N <= 100,000)个隔间,这些 ...

  9. NYOJ 287 Radar 贪心之 区间选点

    Radar 时间限制:1000 ms  |  内存限制:65535 KB 难度:3 描述 Assume the coasting is an infinite straight line. Land ...

最新文章

  1. SQL操作的组成部分
  2. 比起睡觉,我更喜欢刷巨详细的Java枚举类,这是来自猿人的自觉呀
  3. python seaborn boxplot_python - 如何将文本框添加到Seaborn Boxplot? - 堆栈内存溢出
  4. linux-2.6.32在mini2440开发板上移植(16)之LED 驱动程序移植
  5. springboot mongo查询固定字段_你真的会用索引么?[Mongo]
  6. Railgun工具箱HWID验证
  7. EMNLP'21 | 检索式对话情感回复
  8. SpringBoot单元测试@Test没有run的解决方法
  9. AutoForm Master v4.04-ISO 1CD(专业板金优化分析软件,好用!)/
  10. 打码兔官网 验证码识别 远程答题服务 代答平台 验证码识别软件下载
  11. BLE_BQB Test_Modulation Characteristics, LE Coded (S=8)_RF-PHY/TRM/BV-13-C
  12. 黑CNN网站:解恨但不明智
  13. 特发性震颤为什么在喝酒后症状消失?
  14. 做统计分析课程设计时回忆的一些知识
  15. Ubuntu16.04搜索不到wifi列表
  16. 随机过程 Brown 运动(上)
  17. Typescript 面向对象
  18. Linux之汇编语言
  19. 高中计算机网络安全教案,高中信息技术信息安全教案
  20. linux more命令查找关键字,Linux下more命令高级用法

热门文章

  1. 利用Theano理解深度学习——Logistic Regression
  2. IP、子网掩码、网关
  3. Outlook Express 收件箱修复
  4. [大哲学家——尼采] 论老妪和少妇 ——这个文章不知道该如何评价了。
  5. 蚂蚁金服烈元:蚂蚁网络代理演进之路
  6. IE内核浏览器访问https网站出现证书问题
  7. Oracle导入.dat文件
  8. vue小程序开发(一) uni-app基本学习
  9. JavaSE基础知识总结(良心详解)
  10. python读取windows日志_Python取证技术(3): Windows 事件日志分析