如何求骰子总数并在R中找到最佳选项

如何求骰子总数并在R中找到最佳选项,r,dice,R,Dice,我正在为一个游戏编写一个玩家函数。在这个游戏中,你掷4个骰子,并使用不同骰子配对的总和得到5到10之间的数字。我已经对每个不同的骰子和它们的结果进行了编码求和,并确保它们在正确的边界(5到10)内。我不知道如何排除模具一旦被使用的可能性。这就是我到目前为止所做的: 实现这一点的最佳方法是什么?此函数滚动骰子的数量d,并根据求和在5到10之间的规则计算其值组合的总和 roll <- function(d = 4){ f <- function(x) x > 4 &

我正在为一个游戏编写一个玩家函数。在这个游戏中,你掷4个骰子,并使用不同骰子配对的总和得到5到10之间的数字。我已经对每个不同的骰子和它们的结果进行了编码求和,并确保它们在正确的边界(5到10)内。我不知道如何排除模具一旦被使用的可能性。这就是我到目前为止所做的:


实现这一点的最佳方法是什么?

此函数滚动骰子的数量
d
,并根据求和在5到10之间的规则计算其值组合的总和

roll <- function(d = 4){
  f <- function(x) x > 4 & x < 11
  r <- sample(6, d, TRUE)
  r2 <- combn(r, 2, sum)
  r3 <- combn(r, 3, sum)
  r4 <- sum(r)
  c(r[f(r)], r2[f(r2)], r3[f(r3)], r4[f(r4)])
}

set.seed(2021)
roll()
#[1]  6  6  8 10  8 10  6

roll请以文本形式发布您的代码(使用复制/粘贴!),不要发布代码的图片。如果roll\u dice是
c(1,3,5,6)
c(5,5,5,6)
,请给出一个示例,说明您是如何实现的?
sumSRD
是1、2、3或4个骰子的所有可能组合的总和。然后你把总数保持在5到10之间。你所说的最佳选择和一旦使用模具就排除它是什么意思?@Miff我想要1到4个数字之间的任何输出。例如,如果掷骰子是c(1,3,5,6),那么分别加上6,3和1,然后加上5,就可以得到结果10和5。我正在写一个代码,目标是更高的数字,即10,9和108@RuiBarradas在游戏中,你有4个骰子,你可以用任何你想要的方式求和,以得到5到10之间的数字。例如,如果掷骰子的输出为(2,3,5,5),则可以使用3 5或10和5,甚至7和8等。但每个骰子值只能使用一次,因此,一旦在求和中使用了2,则不能再次使用。根据最佳选择,我的目标是最高的数字或最多的数字