相关疑难解决方法(0)

生成M个箱中N个球的所有排列

我想nm箱子中生成一组球的排列.以下嵌套列表集生成这些排列.

n <- 3
m <- 4
v <- rep(0,m)
for (i in n:0){
  for (j in (n-sum(i)):0){
    for (k in (n-sum(i,j)):0){
      for (l in (n - sum(i,j,k)):0){
        v <- c(i,j,k,l)
        print(v)
        if (sum(v) == n){ break }
      }
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

打印解决方案:

[1] 3 0 0 0
[1] 2 1 0 0
[1] 2 0 1 0
[1] 2 0 0 1
[1] 1 2 0 0
[1] 1 1 1 0
[1] 1 1 …
Run Code Online (Sandbox Code Playgroud)

r permutation

9
推荐指数
1
解决办法
812
查看次数

为掷骰子生成所有可能结果的矩阵(忽略顺序)

在订单确实重要的情况下,生成所有可能结果的矩阵相当容易.这样做的一个方法是使用expand.grid如图所示这里.

如果没有怎么办?

如果我是对的,可能的组合的数量是(S+N-1)!/S!(N-1)!,其中S是骰子的数量,每个都具有编号为1到N的N个边.(它与众所周知的组合公式不同,因为可能出现相同的数字在不止一个骰子上).例如,当投掷四个六面骰子时,N = 6且S = 4,所以可能组合的数量是(4 + 6-1)!/ 4!(6-1)!= 9!/ 4!x5!= 126.如何生成这126种可能结果的矩阵?

谢谢.

algorithm combinations r probability dice

5
推荐指数
1
解决办法
4807
查看次数

标签 统计

r ×2

algorithm ×1

combinations ×1

dice ×1

permutation ×1

probability ×1