1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include <bits/stdc++.h>
using namespace std;
#define SIZ 300003
long long arr[SIZ], dp[SIZ], pref[SIZ];
const long long mod = 1e9+7;
int main(){
	ios_base::sync_with_stdio(0);
	cin.tie(0);
	int n;
	long long suma=0;
	cin >> n;
	for(int i=1; i<=n; i++){
		cin >> arr[i];
	}	
	for(int i=1; i<=n; i++){
		suma += arr[i];
		suma%=mod;
		if(suma%2==0){
			dp[i]=pref[i-1]+1;
		}else{
			dp[i]=0;
		}
		pref[i]=pref[i-1]+dp[i];
	}
	cout << dp[n];
	return 0;
}