博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
POJ-2456 Aggressive cows---最大化最小值(也就是求最大值)
阅读量:6442 次
发布时间:2019-06-23

本文共 944 字,大约阅读时间需要 3 分钟。

题目链接:

题目大意:

有n个牛栏,选m个放进牛,相当于一条线段上有 n 个点,选取 m 个点, 使得相邻点之间的最小距离值最大 

解题思路:

二分枚举最小距离的最大值

1 #include
2 #include
3 #include
4 #include
5 using namespace std; 6 const int INF = 1e9; 7 const int maxn = 100005; 8 int n, m; 9 int a[maxn];10 bool judge(int x)11 {12 int last = 1;13 for(int i = 1; i < m; i++)14 {15 int now = last + 1;16 while(now <= n && a[now] - a[last] < x)now++;17 last = now;18 }19 return last <= n;20 }21 int main()22 {23 cin >> n >> m;24 for(int i = 1; i <= n; i++)cin >> a[i];25 sort(a + 1, a + n + 1);26 int l = 0, r = INF + 10, ans;27 while(l <= r)28 {29 int mid = (l + r) / 2;30 if(judge(mid))31 ans = mid, l = mid + 1;32 else r = mid - 1;33 }34 cout<
<

 

转载于:https://www.cnblogs.com/fzl194/p/8971358.html

你可能感兴趣的文章
我的友情链接
查看>>
通过微软MDT分发操作系统(二)分发抓取的镜像
查看>>
quartz常见问题
查看>>
我的友情链接
查看>>
高并发架构
查看>>
查看linux系统是32位还是64位的方法
查看>>
重命名ESXI5.X主机名
查看>>
CentOS 6 系统优化 Shell 脚本
查看>>
运维管理工具之saltstack使用实践-安装配置
查看>>
我的友情链接
查看>>
YUV分析
查看>>
PyTorch#181130
查看>>
打开oracle enterprise manager console控制台失败
查看>>
shell-脚本集合3
查看>>
提高生产力的2个方法:软件复用和知识库
查看>>
北漂之心
查看>>
人为制造回滚事件
查看>>
经典SQL语句--很全面
查看>>
tomcat8 安装|解决启动慢|进入管理|host-manager 403错误
查看>>
红黑树
查看>>