gpt4 book ai didi

ios - 如何生成最多4个但总共16次但重复次数不超过4次的随机值

转载 作者:行者123 更新时间:2023-11-28 18:31:38 32 4
gpt4 key购买 nike

我正在 iOS 中制作内存游戏。有一个 4x4 网格,我想知道如何生成不大于 4 的随机数的逻辑。这些数字将分配给 4x4 网格的 16 单元格。但是当我应用随机数的函数时,它会生成 6 次 2,但在 4x4 网格中我希望它最多生成一个数字 4 次。这是我的做法:

for (int i=0; i<16; i++) {
int r = arc4random() % 4;
NSLog(@"r = %d at i = %d",r,i);
}

但它生成一个数字超过 4 次。还有一个问题我刚刚发现有一个数字永远不会出现的机会,比如 0 出现 4 次,2 出现 8 次,3 出现 4 次,所以 1 将被跳过。也请解决这个问题。

最佳答案

您不希望每个 1 .. 4 允许超过 4。然而,您想要填充 4x4 网格,这意味着每个数字必须有 4。否则假设,那么您最终会得到少于 16 的数字。我建议您做的是创建一个数组,其中包含每个数字中的四个和 shuffle it using this answer。并适本地放置数字。

关于ios - 如何生成最多4个但总共16次但重复次数不超过4次的随机值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27957644/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com