#include <iostream> #include <algorithm> #include <cmath> #include <vector> using namespace std; int a[30]; int ans=0; int n; bool flag[30]; vector<int>v; void choose(int now,int j) { if(now==0) { ans++; return ; } else if(now<0)return ; else { for(int i=j;i<=n;i++) { if(flag[i])continue; flag[i]=1; v.push_back(i); choose(now-a[i],i+1); flag[i]=0; v.pop_back(); } } } int main() { cin>>n; for(int i=1;i<=n;i++) { cin>>a[i]; } choose(40,1); cout<<ans<<endl; } // 64 位输出请用 printf("%lld")