팰린드롬은 앞에서 읽으나 뒤에서 읽으나 똑같은 문자열이다. 예를 들어 ala와 aa는 팰린드롬이지만, adam은 팰린드롬이 아니다.
모든 정수는 k진법으로 (anan−1…a1a0)k 처럼 나타낼 수 있다. 이때 각 자리 ai는 0 이상 k 미만의 정수이다.
(anan−1…a1a0)k가 나타내는 값은 an⋅kn+an−1⋅kn−1+⋯+a1⋅k+a0 이다. 예를 들어 10진법 수 12310의 값은 1⋅100+2⋅10+3이고, 8진법 수 1238의 값은 1⋅64+2⋅8+3이다.
10진법으로 주어진 정수 n을 2,3,…,10진법으로 나타냈을 때, 팰린드롬이 되는 모든 진법을 찾는 프로그램을 작성하시오.
첫째 줄에 정수 n이 주어진다. (1≤n≤101000)
n을 2,3,…,10진법으로 나타냈을 때 팰린드롬이 되는 경우가 하나도 없으면 NIE를 출력한다. 그렇지 않으면 팰린드롬이 되는 각 진법 b에 대해 진법 b와 n을 b진법으로 나타낸 수 m을 b m 형식으로 한 줄에 하나씩 출력한다. 출력은 b가 증가하는 순서로 한다.
예를 들어 n=15는 2진법에서 1111, 4진법에서 33이 되어 두 경우 모두 팰린드롬이다. (1⋅23+1⋅22+1⋅2+1=3⋅4+3=15)