#include using namespace std; using ll = long long; #define fo(a,b) for(int a=0;a<(b);a++) const int NMAX = 10000*10*10+300000; ll d[NMAX]; int out[NMAX]; int dlen; const int SH = 20; const ll MASK_ID = (1ll< %lld\n", in, out); return out; } int main() { int n; scanf("%d", &n); fo(i,n) { char in[10]; char w[10]; scanf("%s", in); d[dlen++]=code(in); for(int i=0;i<9;i++) for(int j=i;j<9;j++) { fo(x,10) w[x]=in[x]; w[i]='?'; w[j]='?'; d[dlen++]=code(w); fo(x,10) w[x]=0; for(int x=0,y=0; y<9;y++) { if(y==i) w[x++]='*'; if(yj) w[x++]=in[y]; } d[dlen++]=code(w); } } scanf("%d", &n); fo(i,n) { char in[10]; scanf("%s", in); d[dlen++]=code(in, i); } sort(d, d+dlen); int c=0; fo(i, dlen) { int id = d[i]&MASK_ID; if(id) { out[id-1] = c; } else c++; if(i+1