![]() |
VOOZH | about |
Consider below list where each digit from 1 to 9 maps to few characters.
1 -> ['A', 'B', 'C'] 2 -> ['D', 'E', 'F'] 3 -> ['G', 'H', 'I'] 4 -> ['J', 'K', 'L'] 5 -> ['M', 'N', 'O'] 6 -> ['P', 'Q', 'R'] 7 -> ['S', 'T', 'U'] 8 -> ['V', 'W', 'X'] 9 -> ['Y', 'Z']
Given a number, replace its digits with corresponding characters in given list and print all strings possible. Same character should be considered for every occurrence of a digit in the number. Input number is positive and doesn't contain 0. Examples :
Input : 121 Output : ADA BDB CDC AEA BEB CEC AFA BFB CFC Input : 22 Output : DD EE FF
The idea is for each digit in the input number, we consider strings formed by the previous digit and append characters mapped to the current digit to them. If this is not the first occurrence of the digit, we append the same character as used in its first occurrence.
Implementation:
ADA BDB CDC AEA BEB CEC AFA BFB CFC