/* ID: zhangzz4 PROG: holstein LANG: C++ */ #include<stdio.h> int main() { freopen("holstein.in","r",stdin); freopen("holstein.out","w",stdout); int v,g; int d[26],f[16][26]; scanf("%d",&v); for(int i=0;i<v;i++) scanf("%d",&d[i]); scanf("%d",&g); for(int i=0;i<g;i++) for(int j=0;j<v;j++) scanf("%d",&f[i][j]); int ans=16,mf; for(int k=0;k<(1<<g);k++) { int t[26]; for(int i=0;i<v;i++) t[i]=d[i]; for(int i=0;i<g;i++) if(k&(1<<i)) { for(int j=0;j<v;j++) t[j]-=f[i][j]; } int flag=1; for(int i=0;i<v;i++) if(t[i]>0) flag=0; if(flag) { int num=0; for(int i=0;i<g;i++) if(k&(1<<i)) num++; if(num<ans) { ans=num; mf=k; } } } printf("%d",ans); for(int i=0;i<g;i++) if(mf&(1<<i)) printf(" %d",i+1); puts(""); //scanf("%'d"); }