1 条题解
-
1
这里放上AC代码,解析可以看老师的直播
#include<bits/stdc++.h> #define ll long long using namespace std; const ll N=5e4+5; ll L,n,m,a[N]; bool check(ll x){ ll cnt=0,last=0; for(ll i=1;i<=n;i++) if(a[i]-a[last]>=x&&L-a[i]>=x) last=i; else cnt++; return cnt<=m; } ll bf(){ ll l=1,mid,r=L; while(l<=r){ mid=l+r>>1; if(check(mid)) l=mid+1; else r=mid-1; } return r; } int main(){ scanf("%lld%lld%lld",&L,&n,&m); for(ll i=1;i<=n;i++) scanf("%lld",&a[i]); printf("%lld",bf()); return 0; }
- 1
信息
- ID
- 656
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 4
- 标签
- 递交数
- 150
- 已通过
- 68
- 上传者