#include #include using namespace std; int mat[11][30], lg[11], i, freq[11], j, gasit; char v[30]; int main() { for(i = 0;i < 10;i++) { cin.get(v, 30); lg[i] = strlen(v) + 1; for(j = 0;j < lg[i] - 1;j++) { mat[i][j + 1] = v[j] - 'a'; } cin.get(); } cin.get(v, 30); for(i = 0;i < strlen(v);i++) { freq[v[i] - '0'] = 1; } gasit = 0; int cat = 0; while(gasit == 0) { cat = 0; for(i = 0;i < 10;i++) { if(freq[i] > 0) { cout << char(mat[i][freq[i]] + 'a'); } } cout << '\n'; i = 9; while(freq[i] == 0) i--; freq[i]++; while(i >= 0) { if(freq[i] != 0) { freq[i] += cat; cat = freq[i] / lg[i]; freq[i] %= lg[i]; if(freq[i] == 0) freq[i] = 1; } i--; } if(cat > 0) gasit = 1; } return 0; }