import java.io.*;
class ideone
{
{
System.
out.
println("\nenter the input Number\n");
combination("",input);
}
{
StringBuilder result1 = new StringBuilder(result);
StringBuilder result2 = new StringBuilder(result);
if("".equalsIgnoreCase(input))
{
return; }
if(input.length() >= 1)
{
int singleNum
= Integer.
parseInt(input.
substring(0,
1)); result1.append(translate(input.substring(0, 1)));
combination(result1.toString(), input.substring(1));
}
if(input.length() >= 2)
{
int doubleNum
= Integer.
parseInt(input.
substring(0,
2)); if (doubleNum <= 26)
{
result2.append(translate(input.substring(0, 2)));
combination(result2.toString(), input.substring(2));
}
}
}
public static char translate
(String a
) {
switch(a)
{
case "1" :
return 'a';
case "2" :
return 'b';
case "3" :
return 'c';
case "4":
return 'd';
case "5":
return 'e';
case "6":
return 'f';
case "7":
return 'g';
case "8":
return 'h';
case "9":
return 'i';
case "10":
return 'j';
case "11" :
return 'k';
case "12":
return 'l';
case "13":
return 'm';
case "14":
return 'n';
case "15":
return 'o';
case "16":
return 'p';
case "17":
return 'q';
case "18":
return 'r';
case "19":
return 's';
case "20":
return 't';
case "21":
return 'u';
case "22":
return 'v';
case "23":
return 'w';
case "24":
return 'x';
case "25":
return 'y';
case "26":
return 'z';
default :
return '0';
}
}
}
aW1wb3J0IGphdmEuaW8uKjsKCgoKY2xhc3MgaWRlb25lIAp7CgoKCXB1YmxpYyBzdGF0aWMgU3RyaW5nIHJlc3VsdDsKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKFN0cmluZyBzW10pIHRocm93cyBJT0V4Y2VwdGlvbgoKCXsKCQkKCQlTeXN0ZW0ub3V0LnByaW50bG4oIlxuZW50ZXIgdGhlIGlucHV0IE51bWJlclxuIik7CgkJQnVmZmVyZWRSZWFkZXIgYnIgPSBuZXcgQnVmZmVyZWRSZWFkZXIobmV3IElucHV0U3RyZWFtUmVhZGVyKFN5c3RlbS5pbikpOwoJCVN0cmluZyBpbnB1dD1ici5yZWFkTGluZSgpOwoJCQoJCWNvbWJpbmF0aW9uKCIiLGlucHV0KTsKCgoKCX0KIAlwdWJsaWMgc3RhdGljIHZvaWQgY29tYmluYXRpb24oU3RyaW5nIHJlc3VsdCwgU3RyaW5nIGlucHV0KSAKICAgCXsKICAgICAgICAJU3RyaW5nQnVpbGRlciByZXN1bHQxID0gbmV3IFN0cmluZ0J1aWxkZXIocmVzdWx0KTsKICAgICAgICAJU3RyaW5nQnVpbGRlciByZXN1bHQyID0gbmV3IFN0cmluZ0J1aWxkZXIocmVzdWx0KTsKICAgICAgICAJaWYoIiIuZXF1YWxzSWdub3JlQ2FzZShpbnB1dCkpCgkgCXsKICAgICAgICAgICAgCQlTeXN0ZW0ub3V0LnByaW50bG4oIHJlc3VsdCk7CiAgICAgICAgICAgIAkJcmV0dXJuOyB9CiBpZihpbnB1dC5sZW5ndGgoKSA+PSAxKQoJCSB7CiAgICAgICAgICAgCQkgaW50IHNpbmdsZU51bSA9IEludGVnZXIucGFyc2VJbnQoaW5wdXQuc3Vic3RyaW5nKDAsIDEpKTsKICAgICAgICAgICAgCQkgcmVzdWx0MS5hcHBlbmQodHJhbnNsYXRlKGlucHV0LnN1YnN0cmluZygwLCAxKSkpOwogICAgICAgICAgICAJCSBjb21iaW5hdGlvbihyZXN1bHQxLnRvU3RyaW5nKCksIGlucHV0LnN1YnN0cmluZygxKSk7CiAgICAgICAgCSB9CiAgICAgICAgCWlmKGlucHV0Lmxlbmd0aCgpID49IDIpIAoJCXsKICAgICAgICAgICAgCQlpbnQgZG91YmxlTnVtID0gSW50ZWdlci5wYXJzZUludChpbnB1dC5zdWJzdHJpbmcoMCwgMikpOwogICAgICAgICAgICAJCWlmIChkb3VibGVOdW0gPD0gMjYpCgkJCSB7CiAgICAgICAgICAgICAgICAJCXJlc3VsdDIuYXBwZW5kKHRyYW5zbGF0ZShpbnB1dC5zdWJzdHJpbmcoMCwgMikpKTsKICAgICAgICAgICAgICAgIAkJY29tYmluYXRpb24ocmVzdWx0Mi50b1N0cmluZygpLCBpbnB1dC5zdWJzdHJpbmcoMikpOwogICAgICAgICAgICAJCSB9CgkJfQogICAgICAgIH0KCgkKCgoJcHVibGljIHN0YXRpYyBjaGFyIHRyYW5zbGF0ZShTdHJpbmcgYSkKCXsKCQlzd2l0Y2goYSkKCQl7CgkJCWNhc2UgIjEiIDoKCQkJCXJldHVybiAnYSc7CgkJCWNhc2UgIjIiIDoKCQkJCXJldHVybiAnYic7CgkJCWNhc2UgIjMiIDoKCQkJCXJldHVybiAnYyc7CgkJCWNhc2UgIjQiOgoJCQkJcmV0dXJuICdkJzsKCQkJY2FzZSAiNSI6CgkJCQlyZXR1cm4gJ2UnOwoJCQljYXNlICI2IjoKCQkJCXJldHVybiAnZic7CgkJCWNhc2UgIjciOgoJCQkJcmV0dXJuICdnJzsKCQkJY2FzZSAiOCI6CgkJCQlyZXR1cm4gJ2gnOwoJCQljYXNlICI5IjoKCQkJCXJldHVybiAnaSc7CgkJCWNhc2UgIjEwIjoKCQkJCXJldHVybiAnaic7CgkJCWNhc2UgIjExIiA6CgkJCQlyZXR1cm4gJ2snOwoJCQljYXNlICIxMiI6CgkJCQlyZXR1cm4gJ2wnOwoJCQljYXNlICIxMyI6CgkJCQlyZXR1cm4gJ20nOwoJCQljYXNlICIxNCI6CgkJCQlyZXR1cm4gJ24nOwoJCQljYXNlICIxNSI6CgkJCQlyZXR1cm4gJ28nOwoJCQljYXNlICIxNiI6CgkJCQlyZXR1cm4gJ3AnOwoJCQljYXNlICIxNyI6CgkJCQlyZXR1cm4gJ3EnOwoJCQljYXNlICIxOCI6CgkJCQlyZXR1cm4gJ3InOwoJCQljYXNlICIxOSI6CgkJCQlyZXR1cm4gJ3MnOwoJCQljYXNlICIyMCI6CgkJCQlyZXR1cm4gJ3QnOwoJCQljYXNlICIyMSI6CgkJCQlyZXR1cm4gJ3UnOwoJCQljYXNlICIyMiI6CgkJCQlyZXR1cm4gJ3YnOwoJCQljYXNlICIyMyI6CgkJCQlyZXR1cm4gJ3cnOwoJCQljYXNlICIyNCI6CgkJCQlyZXR1cm4gJ3gnOwoJCQljYXNlICIyNSI6CgkJCQlyZXR1cm4gJ3knOwoJCQljYXNlICIyNiI6CgkJCQlyZXR1cm4gJ3onOwoJCQlkZWZhdWx0IDoKCQkJCXJldHVybiAnMCc7CgoJCX0KCQkKCX0KCgoKCgoKCn0=