gpt4 book ai didi

javascript - 随机 1-5 5x5 阵列

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:15:29 25 4
gpt4 key购买 nike

我正在尝试制作一个 5x5 的表格,将数字 1-5 随机放入行/列中。但是他们需要为每一行和每一列提供不同的数字。

例如:1234554123415323521423451

我目前的代码很长,所以我会给出一个 pastebin 链接。 http://pastebin.com/ex1bcLxh

我们将不胜感激。

最佳答案

减少了 56 个 Latin squares顺序 5,枚举 here . “减少”意味着它们中的每一个都具有排序顺序的最上面一行和最左边的列。

您可以对拉丁方的行或列应用任何排列,结果也将是一个拉丁方。同样,任何拉丁方都可以通过以下方式转换为简化的拉丁方:

  1. 排列所有 n 列以使顶行按排序顺序排列
  2. 排列底部 (n-1) 行以将左列放入已排序订单。

(第一次排列后左上角的元素已经在正确的位置,所以第二步排序只有n-1行,而不是n行。)

因此通过反转这个操作,我们可以从 56 个简化的拉丁方中的一个开始,并生成代表完整集合的 56*(5!)*(4!) = 161280 个正方形中的任何一个。

所以:

  1. 从 56 个降阶 5 拉丁方中随机选择一个。
  2. 从底部四行的 4!=24 个排列中随机选择一个,并应用它。
  3. 从所有五列的 5!=120 个排列中随机选择一个,并应用它。

假设第 1-3 步中的样本均匀分布,此过程应该从 161280 个 5 阶拉丁方的完整集合中产生均匀分布的样本。

关于javascript - 随机 1-5 5x5 阵列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8335592/

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