Problem5847--YACS - 进制回文

5847: YACS - 进制回文

[Creator : ]
Time Limit : 1.000 sec  Memory Limit : 256 MiB

Description

给定一个十进制数字xx,若它满足在任何一个 $B$ 进制($2 \leq B \leq 16$)下是一个回文数,我们就称这个数字为进制回文数。
例如:当 $x=5$ 时,其对应二进制数字 $(101)_2$ 是一个回文数,对应十进制数字 $(5)_{10}$ 也是一个回文数,我们称十进制数字 $5$ 是一个进制回文数。
现在给定一个十进制正整数 $x$,请问十进制数字 $x$ 是否是进制回文数。若是,则输出 Yes,并从小到大输出它在 $2 \sim 16$ 进制中,哪些进制下是回文数,若不是,则输出 No。

Input

输入共一行,一个正整数:$x$。

Output

输出第一行:该数字是否是进制回文数,
输出第二行:输出该数字在哪些进制下(只考虑 $2 \sim 16$ 进制)是回文数,以空格隔开。

Constraints

对于 $100\%$ 的数据:$1 \leq x \leq 10^9,\ 2 \leq B \leq 16$。

Sample 1 Input

5

Sample 1 Output

Yes
2 4 6 7 8 9 10 11 12 13 14 15 16
十进制数字5在2进制、4进制、6进制一直到16进制下,都是回文数。

HINT

题目来源:IAI 468

Source/Category