poj 3258
来源:互联网 发布:大数据可视化系统 编辑:程序博客网 时间:2024/06/18 16:31
题意:给出起点到终点的距离L,石头数n 和 每块石头距离起点的距离rock[i] 和最多可以移动的石头数m,求两块石头间最短距离的最大值。
和poj 3273一样可以用二分,枚举一个距离,然后看此距离最少要移走多少快石头,如果移动的石头多于m,则说明最短距离的最大值距离还要缩短,更改上区间,否则更改下区间。知道上下区间相等位置,输出枚举的中间值即可。
下面是试探性枚举mid时,计算至少要移走多少块的函数。
int rock[50005];
int L,m,n;
int remove(int mid)
{
int j,ans=0;
int temp=0;
for(int i=1;i<=n;i++)
{
if(rock[i]-temp<mid)如果两块石头之间的距离小于mid,则这块石头要移除
{
ans++;
}else temp=rock[i];
}
if(L-temp<mid)ans++;//最后这块石头是固定的,所以要看它前面的石头是否要移除
return ans;
}
- poj 3258
- POJ 3258
- POJ 3258
- poj 3258
- poj 3258
- POJ 3258
- POJ-3258
- poj 3258
- POJ 3258
- 【POJ】3258
- poj 2456 Aggressive cows poj 3258 (二分)
- POJ 3258 二分算法
- poj 3258 River Hopscotch
- poj 3258(二分。。。)
- poj-3258 River Hopscotch
- poj-3258 River Hopscotch
- poj 3258 二分 过河
- poj 3258 还是二分
- C语言嵌入式系统编程修炼之内存操作 (2)
- mysql变量使用总结
- 使用libcurl库,开发简单的ftp上传工具
- 散列表碰撞的链接法解决之双向链表删除操作的代价
- 简单的超时设置
- poj 3258
- voltDB简介
- MYSQL的binary
- vs2010注册aisual assist 1823
- 深入Java 1.5枚举类型的内部
- Android Dialog用法
- Ext 拖拽深入研究
- 如何去除文件的只读标示
- 公式编辑器Aurora,raster模式正常,vector错误的解决方法