70分二分,求助大佬

P2678 [NOIP2015 提高组] 跳石头

@[someone002](/user/778747) ``` #include<bits/stdc++.h> using namespace std; int m,n,a[100005],l; int check(int x) { int cnt=0,last=0; for(int i=1;i<=n+1;i++) { if(a[i]-a[last]>=x)last=i; else cnt++; } return cnt<=m; } int main() { cin>>l>>n>>m; for(int i=1;i<=n;i++)cin>>a[i]; a[0]=0; a[n+1]=l; int l=0,r=1e9+1; while(l+1<r) { int mid=(l+r)/2; if(check(mid)==true)l=mid; else r=mid; } cout<<l; return 0; } ```
by zvzvzgdfdw @ 2023-07-25 21:50:40


|