为什么我TLE了???
查看原帖
为什么我TLE了???
823340
_Missile_楼主2024/8/27 15:50
#include <bits/stdc++.h>
using namespace std;
int n, a[100005], ans;
bool ck(int x){
	int cnt = x;
	for(int i = 1; i <= n; i++){
		cnt += a[i];
		if(cnt <= 0){
			return 0;
		}
	}
	return 1;
}
int main(){
	cin >> n;
	for(int i = 1; i <= n; i++){
		cin >> a[i];
	}
	int l = 1, r = 1e9 + 1;
	while(l <= r){
		int mid = (l + r) / 2;
		if(ck(mid)){
			ans = mid;
			r = mid;
		}
		else{
			l = mid + 1;
		}
	}
	cout << ans;
	return 0;
}
2024/8/27 15:50
加载中...