不知道哪里错了 求助
查看原帖
不知道哪里错了 求助
657499
Ayaka_Li楼主2022/6/19 14:40
#include <iostream>
using namespace std;
int n,c,a[20080901];
bool Cow (int x) {
	int ans=0,k=1;
	for (int i=2;i<=n;i++) 
	 	if (a[k] + x <= a[i])
	 		k=i,
	 		ans++;
	return ans>=c;
}

int Find () {
	int L=1,R=n; 
	while (L <= R) {
		int mid = (L+R)/2;	
		if (Cow(mid)) 
			L=mid+1;
		else 
			R=mid-1;
	}
	return L-1;
}
int main()  {
	#ifndef ONLINE_JUDGE
		freopen("COW.in","r",stdin);
	#endif
	cin>>n>>c;
	for (int i=1;i<=n;i++) 
		cin>>a[i];
	cout<<Find();
	return 0;
}
2022/6/19 14:40
加载中...