Rob*_*Dey 5 python math combinatorics

在图像中找到了这个谜题.根据我的想法,方法的总数应该是多少
2*comb(7,i) for i <- 1 to 7其中comb定义如下.我的方法是否正确?我关心的是我得到的结果而不是下面写的函数.
def comb(N,k):
if (k > N) or (N < 0) or (k < 0):
return 0L
N,k = map(long,(N,k))
top = N
val = 1L
while (top > (N-k)):
val *= top
top -= 1
n = 1L
while (n < k+1L):
val /= n
n += 1
return val
Run Code Online (Sandbox Code Playgroud)
不要介意我在短时间内提出太多问题.我很热情.
有7个!排列孩子的方法(第一个点有7个选择,第二个点有6个,第三个点有5个,等等)
每个孩子都可以面向内或外.这就像每个位置的额外位.所以乘以2**7.(即每个地点有2个选择).
现在,对于每个订购,如果您旋转圆圈,您将获得"相同"的排序.有7个旋转都产生相同的顺序,因此除以7.
答案是2**7*7!/ 7 = 128*6!= 92160.
| 归档时间: |
|
| 查看次数: |
324 次 |
| 最近记录: |