组合数学--错排问题
2014-10-11 15:53
731 查看
错排问题,在IT面试笔试中都经常见到,我从网上摘抄了一些,希望对自己和大家都有帮助!
/**
N个人去旅行,在旅店开了N个房间,钥匙挂在大厅的墙上,钥匙上没有标号,没人随手拿了一把钥匙,
请用程序实现算出所有人都拿错钥匙的可能性有几种。
*/
//递归方法解决问题,但是效率比较低,不符合递归的合成效益法则,递归调用中做了重复性的工作
int GetCuoPaiNum(int N){
if(N==1)
return 0;
if(N==2)
return 1;
else
return (N-1)*(GetCuoPaiNum(N-1)+GetCuoPaiNum(N-2));
}
/**
N个人去旅行,在旅店开了N个房间,钥匙挂在大厅的墙上,钥匙上没有标号,没人随手拿了一把钥匙,
请用程序实现算出所有人都拿错钥匙的可能性有几种。
*/
//递归方法解决问题,但是效率比较低,不符合递归的合成效益法则,递归调用中做了重复性的工作
int GetCuoPaiNum(int N){
if(N==1)
return 0;
if(N==2)
return 1;
else
return (N-1)*(GetCuoPaiNum(N-1)+GetCuoPaiNum(N-2));
}
相关文章推荐
- 传球问题(组合数学问题)
- 如何利用数学思想解1/2/5组合问题
- 【组合数学】36军官问题
- lucas定理,组合数学问题
- 【组合数学】“派送食物问题”
- C/C++面试之算法系列--如何利用数学思想解1/2/5组合问题
- 04-06组合数学实践_交通问题
- 04-06组合数学实践_交通问题
- 问题 A : 人生三大幻觉(组合数学)
- 数学中排列组合各种问题
- 如何利用数学思想解1/2/5组合问题
- 卡特兰数在多种问题下的应用 组合数学-Catalan数
- (组合数学3.3.2.2)UVA 10497 - Sweet Child Makes Trouble(特殊的排列问题——错排方案数)
- 【组合数学】36军官问题
- 组合数学第二发 错排问题 hdu 2049 + hdu 2068
- 错排问题(组合数学)
- java实现从M个元素中取N个元素的所有组合(数学中的组合问题)
- 相同数不能相邻的排列问题 组合数学-容斥原理
- 组合数学中那些有趣的球和盒子的问题(超强闷骚版,再也不怕球球了)
- Topcoder SRM661 ColorfulLineGraphs,数学组合问题+快速幂求解