#include<bits/stdc++.h>
using namespace std;
int zx,a1[30],zc,a2[30][30],ans=20,a3[30],a4[30];
bool cz(int x)
{
for(int i=1;i<=zx;i++){
int he=0;
for(int j=1;j<=x;j++){
he+=a2[a4[j]][i];
}
if(he<a1[i]){
return false;
}
}
return true;
}
void dfs(int pos,int z)
{
if(pos>zc)
{
if(cz(z) && z<ans)
{
ans=z;
for(int i=1;i<=z;i++)
{
a3[i]=a4[i];
}
}
return ;
}
a4[z+1]=pos;
dfs(pos+1,z+1);
dfs(pos+1,z);
}
int main()
{
cin>>zx;
for(int i=1;i<=zx;i++)
cin>>a1[i];
cin>>zc;
for(int i=1;i<=zc;i++)
{
for(int j=1;j<=zx;j++)
{
cin>>a2[i][j];
}
}
dfs(1,0);
cout<<ans<<" ";
for(int i=1;i<=ans;i++){
cout<<a3[i]<<" ";
}
cout<<endl;
return 0;
}