#include #include using namespace std; int N,K,c[14]; long V=1; map,long>mp; void dfs1(int k,int now,int rest) { if(rest==0) { mp[make_pair(k,now)]++; } else { for(int i=0;i>i&1)) { dfs1(k|1<p=make_pair((1<>i&1)) { dfs2(k|1<>N>>K; int sz=0; for(int i=1;i<=9;i++) { int C;cin>>C; for(;C;V*=C--)c[sz++]=i; } dfs1(0,0,N/2); P10=1; for(int i=0;i