1 条题解
-
0
#include<bits/stdc++.h> using namespace std; const int N=100010; int a[N]; int n,c; bool cheak(int mid) { int cnt=1,last=a[1]; for(int i=1;i<=n;i++) { if(a[i]-last>=mid) { cnt++; last=a[i]; } } return cnt>=c; } int main () { cin>>n>>c; for(int i=1;i<=n;i++) { cin>>a[i]; } sort(a+1,a+n+1); int l=0,r=a[n]; while(l<r) { int mid=l+r+1>>1; if(cheak(mid)) l=mid; else r=mid-1; } cout<<l; return 0; }
- 1
信息
- ID
- 265
- 时间
- 1000ms
- 内存
- 125MiB
- 难度
- 9
- 标签
- 递交数
- 12
- 已通过
- 3
- 上传者