bzoj4525
来源:互联网 发布:联排牙的利与弊 知乎 编辑:程序博客网 时间:2024/05/16 15:12
分析:一眼二分,但是判断答案不知道怎么贪心,然后想了想,发现直接从左到右做就可以了,这样肯定是最优的。注意一下二分的边界。
#include<cstdio>#include<cstring>#include<cmath>#include<algorithm>#include<iostream>#define fo(i,a,b) for(int i=a;i<=b;i++)#define fd(i,a,b) for(int i=a;i>=b;i--)using namespace std;int n,m;const int N=3e5+5;int a[N];inline bool pd(int x){ int k=m; //memset(vis,0,sizeof(vis)); int i=1; while (1) { if (i>n)break; int j=a[i]+2*x; while (a[i]<=j&&i<=n)i++; k--; } if (k<0)return 0; return 1;}int main(){ scanf("%d%d",&n,&m); fo(i,1,n)scanf("%d",&a[i]); std::sort(a+1,a+1+n); int l=0,r=1e9; int ans=1e9; while (l<=r) { int mid=(l+r)>>1; if (pd(mid)) { ans=min(ans,mid); r=mid-1; } else l=mid+1; } printf("%d\n",ans); return 0;}
0 0
- bzoj4525
- BZOJ4525——[Usaco2016 Jan]Angry Cows
- 网易计算机视觉笔试题
- Android中多图片选择器ImagePicker库的使用(仿微信、非常容易集成)
- Ubuntu 15.10 搜狗搜狗输入法崩溃解决方法
- level使用说明
- SEO七大常见误区知多少
- bzoj4525
- git 找回丢失的对象 找回commit
- 网络流24题之T7 试题库问题
- 移植quectel的GPS模块
- 数据库索引,有什么用
- C++ using namespace std 详解
- "通常每个套接字地址(协议/网络地址/端口)只允许使用一次"
- RSA 算法根据公钥(私钥)文件路径获取私钥(公钥)值
- Oracle Enterprise Manager打不开的解决方法