Aggressive cows

Time Limit: 1000MS Memory Limit: 65536K Total

Submissions: 28666 Accepted: 13146 Description

Farmer John has built a new long barn, with N (2 <= N <= 100,000)

stalls. The stalls are located along a straight line at positions

x1,…,xN (0 <= xi <= 1,000,000,000).

His C (2 <= C <= N) cows don’t like this barn layout and become

aggressive towards each other once put into a stall. To prevent the

cows from hurting each other, FJ want to assign the cows to the

stalls, such that the minimum distance between any two of them is as

large as possible. What is the largest minimum distance? Input

  • Line 1: Two space-separated integers: N and C

  • Lines 2…N+1: Line i+1 contains an integer stall location, xi Output

  • Line 1: One integer: the largest minimum distance

Sample Input

5 3
1
2
8
4
9
Sample Output 3

解题思路

题意:把m有牛放入n个牛棚,要求让每头牛值简单距离尽可能的大,输出,m头牛之间的 最小的那个距离。

思路 :这题看着很难想,看着数据那么大不知道怎么做,但是只要我要应用二分的思想我们就可以非常容易的解决这个题了:首先我们规定 最小距离为 mn,最大距离 mx为1e9,距离的中间值mid = (mn + mx)/ 2,那么 我们假设 mid就是每头cow之间间隔的最小距离,有了这个假设距离mid,我们在遍历一下所给的牛棚看能不能把所有的奶牛以 mid间距为限制条,能不能把所有的m头奶牛放进去,如果可以就用 ans记录这个可行的mid答案(但不一定是最的答案),这个时候为了求最有优答案,我们再次做假设,能不能假设 奶牛的间距跟大一些呢??,这个时候我们可以调整最小距离的下限mn为mid + 1,这样在二分的时候,我们假设的距离mid自然而然的变成了 mid = (mn + mx) / 2,假设个距离变得更大了,这样再次遍历牛棚看能不能把所有的cow放下,如果能那就继续改变距离下限mm以增大我们假设个距离 mid;如果不能能放下所有的奶牛,说明我们那假设的距离mid 太大了,那么我们就调整上限 让mx = mid - 1 , 来缩小我么你假设的距离,。。。。。。。这样通过不断的缩小我们就可以得到最后的答案了

Aggressive cows(二分法)的更多相关文章

  1. 二分法的应用:最大化最小值 POJ2456 Aggressive cows

    /* 二分法的应用:最大化最小值 POJ2456 Aggressive cows Time Limit: 1000MS Memory Limit: 65536K Total Submissions: ...

  2. POJ2456 Aggressive cows

    Aggressive cows 二分,关键是转化为二分! #include <cstdio> #include <algorithm> ; ; int N, C; int a[ ...

  3. [ACM] poj 2456 Aggressive cows (二分查找)

    Aggressive cows Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 5436   Accepted: 2720 D ...

  4. POJ 2456 Aggressive cows

    Aggressive cows Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 11192   Accepted: 5492 ...

  5. BZOJ 1734: [Usaco2005 feb]Aggressive cows 愤怒的牛( 二分答案 )

    最小最大...又是经典的二分答案做法.. -------------------------------------------------------------------------- #inc ...

  6. 疯牛-- Aggressive cows (二分)

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

  7. 1734: [Usaco2005 feb]Aggressive cows 愤怒的牛

    1734: [Usaco2005 feb]Aggressive cows 愤怒的牛 Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 217  Solved: ...

  8. 最大化最小值 Aggressive cows

    Aggressive cows http://poj.org/problem?id=2456 N间小屋,M头牛,使得牛跟牛之间的距离最远,以防止牛打架. 2<=N<=100000 2< ...

  9. poj 2456 Aggressive cows && nyoj 疯牛 最大化最小值 二分

    poj 2456 Aggressive cows && nyoj 疯牛 最大化最小值 二分 题目链接: nyoj : http://acm.nyist.net/JudgeOnline/ ...

随机推荐

  1. python之路-基本数据类型之str字符串

    1.概念 python中用',",''',"""引起来的内容称为字符串,可以保存少量数据并进行相应的操作 #先来看看str的源码写了什么,方法:按ctrl+鼠标 ...

  2. django 从零开始 5 数据库模型创建

    进入应用项目下的models.py文件 自带一个导入的包 from django.db import models 使用这个包创建models模型 我这是要创建一个图站 ,所以模型设置并不复杂(路径配 ...

  3. 关于 服务器ip和域名进行一个绑定

    最近想让人访问我做个一个网站,但是我发现让服务器ip地址直接暴露不是很好 (做着玩) 于是就去阿里云买了一个5块1年的域名 先在网上百度了一下是怎么绑定域名的,发现全是含糊不清的信息,果然是垃圾百度 ...

  4. python sqlite3操作类扩展,包含数据库分页

     一.原因 最近在使用python3和sqlite3编辑一些小程序,由于要使用数据库,就离不开增.删.改.查,sqlite3的操作同java里的jdbc很像,于是就想找现成的操作类,找来找去,发现一个 ...

  5. ES6: let 与 const

    ES2015(ES6) 新增加了两个重要的 JavaScript 关键字: let 和 const. let 声明的变量只在 let 命令所在的代码块内有效. const 声明一个只读的常量,一旦声明 ...

  6. 《自拍教程45》Python_adb实时监控Logcat日志

    接上一篇:adb命令_一键截取logcat日志, 有一天, 系统稳定性开发负责人找到我,希望我能在跑android 系统monkey的时候, 实时监控logcat的输出,如果一旦发现"jav ...

  7. OPENGL图形渲染管线图解

    OPENGL固定图形渲染管线可以粗略地认为由下面的阶段衔接而成: 顶点颜色,光照,材质三个输入在光栅化前控制绘制管线的操作.光照和材质不能单独使用.顶点颜色,光源颜色,材质颜色都有alpha值,它们的 ...

  8. javascript中事件概述

    事件就是用户或浏览器自身执行的某种动作.诸如click.load.和mouseover,都是事件的名字.而响应某个事件的函数就叫做事件处理程序(或事件侦听器).事件处理程序的名字以"on&q ...

  9. 使用vue构建一个可视化大数据平台

    使用vue全家桶以及v-charts和datav实现一个github可视化大数据界面展示,没有设计搞的原因,只能忽略设计编写一下界面, 用户只需要登录的时候填写自己github用户名.就可以看到数据展 ...

  10. DS博客作业02--栈和队列

    0.PTA得分截图 1.本周学习总结 1.1总结栈和队列内容 栈的存储结构及操作 栈的顺序存储结构 typedef struct { ElemType data[MaxSize]: int top: ...