字符排列问题
来源:互联网 发布:微商货源网源码 编辑:程序博客网 时间:2024/06/05 16:04
字符排列问题
题目描述
有n个字母,列出由该字母组成的字符串的全排列(相同的排列只计一次)。
输入
第一行输入是字母个数n,1<=n<=20。接下来一行输入的是待排列的n个字母。
输出
计算出的n个字母的所有不同排列总数
样例输入
4
aacc
样例输出
6
/*看到这个题首先想到对n个字符全排列,这当然会用到阶乘,将阶乘所得值赋值给ans,定义一个变量b,赋初值为1,从1-n判断前后两个字符是否相等,若相等,b加1,直到循环结束,输出结果为ans/b的值!*/#include <stdio.h>#include <stdlib.h>#include <string.h>int cmp(const void *a,const void *b){ return *(char *)a-*(char *)b;}int main(){ int n; char s[21]; while(scanf("%d %s",&n,s)!=EOF) { qsort(s,n,sizeof(s[0]),cmp); long ans=1,b=1; int i; for(i=1;i<=n;i++) ans*=i; for(i=1;i<n;i++) { if(s[i]==s[i-1]) b++; else { ans/=b; b=1; } } ans/=b; printf("%ld\n",ans); } return 0;}
0 0
- 字符排列问题
- shu_1186 字符排列问题
- 字符排列问题
- 字符排列问题
- 1098: 字符排列问题
- 1157: 字符排列问题 [数学]
- [算法设计-字符的全排列问题]
- 变位词问题(字符的排列)
- 递归求解字符数组全排列问题
- 字符排列
- 字符全排列、全组合以及相关问题
- 采用递归算法实现任意字符的全排列问题
- 字符串的全排列问题(一)——无重复出现字符的排列
- 字符的全排列
- 字符全排列
- 字符全排列Permutation
- 字符全排列
- 字符全排列算法
- hdu2097Sky数
- j2ee 应用中 jar 编码导致的错误 HTTP Status 500 - Internal Server Error
- 结构化将规范赫然特我让他广东省是固定
- leetcode Subsets
- CODEVS 1245 最小的N个和 堆+排序
- 字符排列问题
- hdu 1058 朴素算法和DP做法
- 厦门大学线下编程比赛第一题:求和
- Problem - 1006_Tick and Tick
- top.location.href 不兼容 火狐和谷歌浏览器。。
- java基本语法+一点点提高
- 《组播扩展OSPF》
- HDU1128
- poj 2955 Brackets(区间DP)