#include #include int n; char s[15][100]; int st[100], nr[15]; void back (int k) { if (!('0' <= s[0][k] && s[0][k] <= '9')) { for (int i = 1; i <= k - 1; i ++) printf ("%c", s[s[0][i] - '0' + 1][st[i]]); printf ("\n"); return ; } int i; for (i = 1; i <= nr[s[0][k] - '0' + 1]; i ++) { st[k] = i; back (k + 1); } } int main () { #ifndef ONLINE_JUDGE freopen ("mind1.in", "r", stdin); freopen ("mind1.out", "w", stdout); #endif n = 10; int i; for (i = 1; i <= 10; i ++) { gets (s[i] + 1); nr[i] = strlen (s[i] + 1); } gets (s[0] + 1); back (1); return 0; }