import itertools  

排列: 4个数内选2个
>>> print list(itertools.permutations([1,2,3,4],2))
[(1, 2), (1, 3), (1, 4), (2, 1), (2, 3), (2, 4), (3, 1), (3, 2), (3, 4), (4, 1), (4, 2), (4, 3)] 组合:4个数内选2个:
>>> print list(itertools.combinations([1,2,3,4],2))
[(1, 2), (1, 3), (1, 4), (2, 3), (2, 4), (3, 4)] _____________________________________ ABCDE 5个数的排列(去掉重复):
>>>len(set(list(itertools.permutations(['A','B','C','D','E'],5))))
120 AABCD 5个数不同的排列(去掉重复):
>>>len(set(list(itertools.permutations(['A','A','B','C','D'],5))))
60 AABBC(去掉重复):
>>> len(set(list(itertools.permutations(['A','A','B','B','C'],5))))
30 AAABC(去掉重复):
>>> len(set(list(itertools.permutations(['A','A','A','B','C'],5))))
20 AAABB(去掉重复):
>>> len(set(list(itertools.permutations(['A','A','A','B','B'],5))))
10 AAAAB(去掉重复):
>>> len(set(list(itertools.permutations(['A','A','A','A','B'],5))))
5
import math

//求阶乘
math.factorial(3) //求排列数 : n个数选x个
def P(n,x):
return math.factorial(n)/math.factorial(n-x) //求组合数 : n个数选x个
def C(n,x):
return P(n,x) / math.factorial(x) 一手牌满堂红的概率:(5张牌,3张点相同,另2张点数相同)
P(13,2) * C(4,3) * C(4,2) / C(13*4,5) = 0.0014405762304921968

  

最新文章

  1. Java I/O NIO学习
  2. 设计模式——适配器模式(Adapter Pattern)
  3. 第一个MapReduce程序
  4. jAVA HDU1001题
  5. C++中new和不new的区别
  6. WEB 中的一些名词解释
  7. (转)反射发送实战(-)InvokeMember
  8. php base64数据与图片的转换
  9. Eclipse使用总结
  10. Android SDK 2.2 离线安装
  11. FusionCharts生成报表应用
  12. Swift语言中与C/C++和Java不同的语法(四)
  13. Java EE开发技术课程第六周(jsf、facelets)
  14. Java 程序员必须了解的 7 个性能指标
  15. python--__init__()方法和__new__()方法
  16. Mybatis非mapper代理配置
  17. 扫AR
  18. Sql 插入自定义主键
  19. ubuntu16。04LST配置nfs实现服务器和客户端共享文件
  20. 把Java中\u格式的unicode编码转成中文

热门文章

  1. POJ1679 The Unique MST(次小生成树)
  2. bzoj1019 [SHOI2008]汉诺塔
  3. ! cocos2d sprintf的问题
  4. BZOJ1172 : [Balkan2007]Dream
  5. webkit webApp 开发技术要点总结【转】
  6. Shell 函数 function [转]
  7. Stack and Heap 堆和栈的区别
  8. Qt 程序和窗口添加图标
  9. salt安装zabbix
  10. java 中的instanceof的用法