2476: 同字异构数

Memory Limit:128 MB Time Limit:1.000 S
Judge Style:Text Compare Creator:
Submit:1 Solved:0

Description

    有一种神奇的数,叫做同字异构数,即为由若干个相同的数字分别构成的不相等的数。如构成数98765554455578968个数字是相同的,它们是同字异构数。注意,同字异构数必须位数相等,01119 91110 不互为同字异构数!!请你编一个程序求出一个数的所有同字异构数。


 



Input

输入文件仅有一行包含一个正整数N。



Output

输出文件第一行为一个正整数M,表示N的所有同字异构数的个数,紧接着从第二行开始从小到大依次输出这M个同字异构数,每行输出一个数。

 



Sample Input Copy

353
 

Sample Output Copy

3
335
353
533
 

HINT

数据范围
30%的数据满足:N≤1000
60%的数据满足:N≤1000000
100%的数据满足:N≤1000000000
50%的数据满足:N中没有数字0,且N中每个数字只出现1次。
 
评分标准
共有10个测试数据,对于每个测试点,如果你的输出文件的第一行中的数与标准答案一致则可得4分,如果你的输出文件与命题人的输出文件完全一致则得10分,其它情况得分均为0。
 

Source/Category