问题来自《Linux C一站式编程》,是个挺有意思的题目。2、定义一个数组,编程打印它的全排列。比如定义:#define N 3 int a[N] = { 1, 2, 3 };则运行结果是:$ ./a.out1 2 3 1 3 2 2 1 3 2 3 1 3 2 1 3 1 2程序的主要思路是:把第...
分类:
其他好文 时间:
2014-10-16 03:25:51
阅读次数:
302
#include #include #include#includeusing namespace std;double num[1000000];void init_arrary(){ for (int i = 1; i > n >> m){ double sum=0,res;...
分类:
其他好文 时间:
2014-10-12 13:20:07
阅读次数:
145
题目地址:Paths on a Grid题目大意: 给你一个矩形的格子,让你从左下角走到右上角,每次移动只能向上或者向右,问你有多少种可能的路径。解题思路: 水题,排列组合。推出公式C(m+n,较小的那个数)代码: 1 #include 2 #include 3 #include 4 #i...
分类:
其他好文 时间:
2014-09-30 23:20:30
阅读次数:
197
///?<summary>
///?字符串是否存在于“指定升序数字数字组成的任意位数字中”
///??eg:
///??ASet=178?可以组成的任意位升序数字是:1、7、8、17、18、78、178
///??若Aval是其中一个则返回true,否则返...
分类:
其他好文 时间:
2014-09-28 18:48:17
阅读次数:
221
一、破解密码的基础关于密码的破解我再重复一次好了。密码破解就两大类方法。一是字典解密,而是暴力解密。暴力解密就是采用穷举的方法——你密码是怎么组成的呢?无非就是数字、字母、符号,暴力解密就是采用一切可能的组合方式排列组合出所有的搭配方式,然后一个一个地去试,看哪个能试对。——当然不是由人工去暴力,那...
分类:
其他好文 时间:
2014-09-27 23:24:20
阅读次数:
220
在n个不同的元素中: 若取 r 个按次序排列, 则成为从n中取r个排列,其排列数为:P( n, r )=( n! ) / ( n-r )! 。 如取出 r 个二不考虑起次序,则称为 从n中取 r 个组合, 其组合数为:C( n, r ) = ( n! )/[ ( r! ) *( n-r )! ].....
分类:
其他好文 时间:
2014-09-27 17:28:30
阅读次数:
172
#include<stdio.h>#include<string.h>intcheck(char*str,intl){for(inti=0;i<l;i++){for(intj=0;j<l;j++){if(j==i)continue;if(str[i]==str[j])return1;}}return0;}voidShow(intn,intm,char*str,char*p,double*i){n--;for(inta=0;a<m;a++){p[n]=str[a];if..
分类:
其他好文 时间:
2014-09-27 02:53:49
阅读次数:
490
1. 编写一个方法,洗一副牌。要求做到完美洗牌,换言之,这副牌52!中排列组合出现的概率相同。假设给定一个完美的随机数发生器。 假设有个方法shuffle对n-1个元素有效,我们可以用它来打乱n个元素的次序。我们会先打乱前n-1个元素的次序,然后,取第n个元素,将它与数组中的元素随机交换。这是递归....
分类:
其他好文 时间:
2014-09-24 01:24:25
阅读次数:
332
generating-function-and-permutation-combination
分类:
其他好文 时间:
2014-09-23 19:01:15
阅读次数:
222
题目:求由A,B,C构成的有序传中长度为n,且每个B前面的A的个数不少于当前B,每个C前面的B的个数不少于当前C的个数。
分析:dp,求排列组合数。
考虑二维的状况:
如果 A>=B 则在 F(A-1,B)后面放上A,在F(A,B-1)后面放上B;
F(A,B)= F(A,B-1)+ F(A-1,...
分类:
其他好文 时间:
2014-09-19 11:58:15
阅读次数:
165