1 条题解

  • 1
    @ 2024-2-11 19:07:16

    世界上最好的题解😄

    #include<bits/stdc++.h>
    using namespace std;
    int h,n,k,a[100005];
    int main(){
    	cin>>h>>n>>k;
    	for(int i=1;i<=n;i++)cin>>a[i];
    	int l=0,r=h+1,mid;
    	while(l+1!=r){
    		mid=(l+r)/2;
    		int cnt=0;
    		for(int i=2;i<=n;i++){
    			if(a[i]-a[i-1]>mid){
    				cnt+=(a[i]-a[i-1])/mid;
    				if((a[i]-a[i-1])%mid==0)cnt--;
    			}
    		}
    		if(cnt<=k)r=mid;
    		else l=mid;
    	}
    	cout<<r;
    	return 0;
    }
    

    看完别忘了点赞呦👀️

    • 1

    信息

    ID
    2786
    时间
    1000ms
    内存
    128MiB
    难度
    3
    标签
    递交数
    7
    已通过
    3
    上传者