开始我的思路是:固定一半,另一半用组合公式cn1+cn2+cn3+cn4+.....+cni;最后用全排列减去它们即可。最后发现思路完全不对,必须用错排公式进行计算。即Cnm*a[N-m]; 从N个人中选出m个正确的,用错排公式算出(N-m)没在对应位置的个数。根据分步计数原理,可以得到结果。#in...
分类:
其他好文 时间:
2014-07-19 00:03:56
阅读次数:
214
排列 从n个不同元素中,任取m个元素按照一定的顺序排成一列(m≤n,m与n均为自然数,下同),叫做从n个不同元素中取出m个元素的一个排列. 从n个不同元素中取出m个元素的所有排列的个数(m≤n),叫做从n个不同元素中取出m个元素的排列数,用符号 A(n,m)表示。 A(n,m)=n(n-1)(n-2...
分类:
其他好文 时间:
2014-06-27 16:52:16
阅读次数:
201
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4810
思路:先把每个数字按位分离出来,存放1的个数,那么每位0的个数为n - 1的个数,然后利用组合数学和异或的原理,枚举奇数个1的情况,然后利用乘法和加法计数原理累加出来的就是该位的答案,最后乘上改为对应的数值最后加起来就是答案
代码:
#include
#include
const _...
分类:
其他好文 时间:
2014-05-18 04:30:41
阅读次数:
257
一、计数原理
加法原理:n个方法,每个方法有Pi种方案,那么一共方案数为P1 + P2 + P3... + Pn
乘法原理:一件事情有n个步骤,每个步骤需要pi种方案,那么一共有P1 * P2 * P3 * ... * Pn种方案。
容斥原理:集合A,B,C。|A U B U C| = |A| + |B| + |C| - |AB| - |AC| - |BC| + |ABC|。依次类推。
基...
分类:
其他好文 时间:
2014-05-11 06:28:46
阅读次数:
450