#include <iostream>
#include<vector>
using namespace std;
vector<int>v;
int res=0;
void traceback(int k,int n,int sum){//k从0开始
if(sum==40){res++;return;}
else if(sum>40){return ;}
else if(k==n) return ;
traceback(k+1,n,sum+v[k]);
traceback(k+1,n,sum);
}
int main() {
//利用 类似回溯算法
//每个分支对应选 不选
int n;
while(cin>>n){
v.clear();res=0;int t=n;
while(n-->0){
int t;cin>>t;
v.push_back(t);
}
traceback(0,t,0);
cout<<res;
}
}
// 64 位输出请用 printf("%lld")



京公网安备 11010502036488号