Problem1642--有重复元素的排列问题

1642: 有重复元素的排列问题

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

Description

 设R={ r1, r2 , …, rn}是要进行排列的n个元素。其中元素r1, r2 , …, rn可能相同。试设计一个算法,列出R的所有不同排列。
 给定n 以及待排列的n个元素。计算出这n 个元素的所有不同字典序排列。
测试数据保证都是小写字母。

Input

第1 行是元素个数n,1≤n≤20。接下来的1 行是待排列的n个元素。

Output

输出n个元素的所有不同排列,最后1行中的数是排列总数。

Sample Input Copy

4
aacc

Sample Output Copy

aacc
acac
acca
caac
caca
ccaa
6

HINT

如果是用scanf读入,读入第一行的数字后,要用两个getchar()才能过滤掉第一行的换行,具体原因不明。
25年2月21日更新:该问题由Windows用两个字符来换行引起,已修复并重判,请无视上述的“两个getchar()”。

------
acg
wzs14687

Source/Category

搜索