求助,第四个点wa,谢谢
查看原帖
求助,第四个点wa,谢谢
1224510
huyiheng楼主2024/4/5 19:34

第四个点

Wrong Answer.wrong answer On line 1 column 6, read 3, expected 2.

#include<bits/stdc++.h>
using namespace std;
long long n,m;
int a[100011],l=-1,r=0,mid;
bool check(int x){
	long long t=0,sum=0;
	for(int i=1;i<=n;i++){
		t+=a[i];
		if(a[i]>x){
			return false;
		}
		if(t>x){// && a[i]<=x
			t=0;
			sum++;
			i--;
		}
	}if(sum<m) return false;
	return true;
}
int main(){
	bool t;
	cin>>n>>m;
	for(int i=1;i<=n;i++){
		cin>>a[i];
		l=max(a[i],l);
		r+=a[i];
	}while(l<r){
		mid=(l+r+1)/2;
		t=check(mid);
		if(!t){
			r=--mid;
		}else if(t){
			l=mid;
		}
	}cout<<++l;
	return 0;
}

谢谢

2024/4/5 19:34
加载中...