RT
#include<bits/stdc++.h>
using namespace std;
int a[1000100],n,m;
int h[2000100],hd,lt=0,mi[2000100],ans;
int main()
{
scanf("%d",&n);
m=n;
for(int i=1;i<=n;++i)
{
scanf("%d",&a[i]);
a[i]=a[i-1]+a[i];
}
for(int i=n+1;i<=2*n;++i)a[i]=a[i-1]+a[i-n]-a[i-n-1];
n=n*2;
/*for(int i=1;i<=n;++i)
{
printf("%d ",a[i]);
}
puts("");*/
h[0]=INT_MAX;
for(int i=1;i<m;++i)
{
h[++lt]=i;
while(lt>hd+1&&a[h[lt]]<a[h[lt-1]])
{
h[lt-1]=h[lt];
lt--;
}
}
/*for(int i=hd+1;i<=lt;++i)
{
printf("%d ",a[h[i]]);
}
puts("");*/
hd=0,lt=0;
for(int i=1;i<m;++i)
{
h[++lt]=i;
while(lt>hd+1&&a[h[lt]]<a[h[lt-1]])
{
h[lt-1]=h[lt];
lt--;
}
}
for(int i=m;i<=n;++i)
{
if(h[hd+1]<i-m+1&&h[hd+1]!=0)
{
hd++;
h[hd-1]=INT_MAX;
}
h[++lt]=i;
while(lt>hd+1&&a[h[lt]]<a[h[lt-1]])
{
h[lt-1]=h[lt];
lt--;
}
mi[i]=a[h[hd+1]];
/*for(int i=hd+1;i<=lt;++i)
{
printf("%d ",a[h[i]]);
}
puts("");*/
}
//for(int i=1;i<=n/2;++i)printf("%d ",mi[i+n/2-1]);
//puts("miOK");
for(int i=1;i<=n/2;++i)
{
if(mi[i+n/2-1]-a[i-1]>=0)ans++;
//printf("%d ",a[i-1]);
}
//puts("aOK");
printf("%d",ans);
return 0;
}