12 条题解
-
0
#include<bits/stdc++.h> using namespace std; int L,n,m,a[50004],l,r,ans; bool check(int mid) { int last=0,sum=0; for(int i=1;i<=n;i++) a[i]-last>=mid?last=a[i]:sum++; return sum<=m; } int main() { ios::sync_with_stdio(0); cin.tie(0); scanf("%d%d%d",&L,&n,&m); for(int i=1;i<=n;i++) scanf("%d",&a[i]); a[++n]=L,l=1,r=L; while(l<=r) { int mid=(l+r)>>1; check(mid)?ans=mid,l=mid+1:r=mid-1; } printf("%d",ans); return 0; }
信息
- ID
- 755
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 6
- 标签
- 递交数
- 778
- 已通过
- 240
- 上传者