解题思路:
注意事项:
参考代码:
#include<stdio.h>
int n,sum;
char s[21];
int b[21];
void dfs(int k)
{
int i,j;
if(k>n)
{
sum++;
return ;
}
for(i=1;i<=n;i++)
if(b[i]==0)
{
b[i]=1;
dfs(k+1);
b[i]=0;
}
}
int main()
{
int i,j;
scanf("%d",&n);
getchar();
for(i=1;i<=n;i++)
scanf("%c",&s[i]);
dfs(1);
for(i=1;i<=n;i++)
b[i]=1;
for(i=1;i<=n;i++)
for(j=i+1;j<=n;j++)
if(s[i]==s[j])
b[i]++;
for(i=1;i<=n;i++)
sum=sum/b[i];
printf("%d\n",sum);
return 0;
}
0.0分
0 人评分
字符串对比 (C语言代码)浏览:1415 |
WU-判定字符位置 (C++代码)浏览:1408 |
C语言程序设计教程(第三版)课后习题7.2 (C语言代码)浏览:800 |
C语言训练-自由落体问题 (C语言代码)浏览:627 |
K-进制数 (C语言描述,蓝桥杯)浏览:927 |
文科生的悲哀 (C语言代码)浏览:1405 |
矩阵乘方 (C语言代码)浏览:1036 |
C语言程序设计教程(第三版)课后习题7.2 (C语言代码)浏览:754 |
小O的乘积 (C语言代码)浏览:1017 |
1392题解(大数相加)浏览:605 |