Convert integer numbers to Roman numerals (C++)
Convert Roman numerals to integer numbers (C++)
Maximum profit or loss in a series of stock prices (Java)
Print all possible words that a phone number can present (C++, recursive)
int const PHONE_NUMBER_LENGTH = 3;
void PrintKeypadWords(int phoneNum [])
{
char result[PHONE_NUMBER_LENGTH];
DoPrintKeypadWords(phoneNum, 0, result);
}
void DoPrintKeypadWords(int phoneNum [], int currDigit, char result[])
{
if (currDigit == PHONE_NUMBER_LENGTH)
{
result[PHONE_NUMBER_LENGTH] = '\0';
std::cout << result << "\n";
return;
}
for (int i = 1; i <= 3; i++)
{
result[currDigit] = GetCharKey(phoneNum[currDigit], i);
DoPrintKeypadWords(phoneNum, currDigit + 1, result);
if (phoneNum[currDigit] == 0 || phoneNum[currDigit] == 1)
{
return;
}
}
}
Test:
int phoneNum[PHONE_NUMBER_LENGTH] = {4,8,2};
PrintKeypadWords(phoneNum);