#include <bits/stdc++.h>
using namespace std;
char str[15];
int num[15],len;
void dfs(int deep)
{
if(deep==len)
{
printf("%s\n",str);
return;
}
for(int i=0;i<=9;i++)
{
if(num[i])
{
num[i]--;
str[deep]=i+'0';
dfs(deep+1);
num[i]++;
}
}
}
int main()
{
while(scanf(" %s",&str)!=EOF)
{
memset(num,0,sizeof(num));
len=strlen(str);
for(int i=0;i<len;i++)
num[str[i]-'0']++;
dfs(0);
}
}
51nod 1384 全排列
最新推荐文章于 2018-11-16 18:19:19 发布