题解
【基础】最小的空旷指数
1 条题解
-
0
#include<bits/stdc++.h> using namespace std; int h,n,k,a[100005],ans; int check(int mid){ int k2=k; for(int i=2;i<=n;i++){ k2-=((a[i]-a[i-1]-1)/mid); } return k2>=0; } int main(){ cin>>h>>n>>k; 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; if(check(mid)==true){ r=mid-1; }else{ l=mid+1; } } cout<<l; return 0; }
- 1