#include <cstdio>
#include <iostream>
using namespace std;
const int N=10010;
int n,a[N],b[N],sum;//1 有雷 0 无雷
inline int read(){
char c; int x=0;
while(c<48)c=getchar();
while(c>=48){
x=x*10+c-'0';
c=getchar();
}
return x;
}
int main(){
n=read();
for(int i=1;i<=n;i++)b[i]=read();
if(b[1]==2){
a[1]=1; a[2]=1;
for(int i=3;i<=n;i++){
a[i]=b[i-1]-a[i-2]-a[i-1];
if(a[i]!=0 && a[i]!=1)break;
if(i==n && a[i-1]+a[i]==b[i])sum++;
}
cout<<sum<<endl;
return 0;
}
if(b[1]==0){
a[1]=0; a[2]=0;
for(int i=3;i<=n;i++){
a[i]=b[i-1]-a[i-2]-a[i-1];
if(a[i]!=0 && a[i]!=1)break;
if(i==n && a[i-1]+a[i]==b[i])sum++;
}
cout<<sum<<endl;
return 0;
}
a[1]=1; a[2]=0;
for(int i=3;i<=n;i++){
a[i]=b[i-1]-a[i-2]-a[i-1];
if(a[i]!=0 && a[i]!=1)break;
if(i==n && a[i-1]+a[i]==b[i])sum++;
}
a[1]=0; a[2]=1;
for(int i=3;i<=n;i++){
a[i]=b[i-1]-a[i-2]-a[i-1];
if(a[i]!=0 && a[i]!=1)break;
if(i==n && a[i-1]+a[i]==b[i])sum++;
}
cout<<sum<<endl;
return 0;
}