#include <bits/stdc++.h>
using namespace std;
long long n,s[2000005],zym,x;
deque<long long> shanshan;
int main(){
freopen("P2629.9_in","r",stdin);
cin>>n;
for(int i=1;i<=n;i++){
cin>>s[i];
s[i]+=s[i-1];
}
for(int i=n+1;i<=2*n;i++){
s[i]=s[n]+s[i-n];
}
for(int i=1;i<=2*n-2;i++){
if(shanshan.empty()){
shanshan.push_back(i);
}
else{
if(i>=n){
if(shanshan.front()<i-n+1){
shanshan.pop_front();
}
}
while(!shanshan.empty()&&s[i]-x<s[shanshan.back()]-x){
shanshan.pop_back();
}
shanshan.push_back(i);
if(i>=n){
if(s[shanshan.front()]-x>=0){
zym++;
}
x=s[i-n+1];
}
}
}
cout<<zym;
return 0;
}
提交记录