对尽可能少重复的项目进行排序的最佳方法

问题描述 投票:0回答:1

我有 4266 个球: 168红 270绿色 321蓝色 331黄 345橙色 865白色 977黑色 989棕色

它们必须被分配到 474 个装有 9 个球的盒子中。每个盒子必须包含尽可能少的重复颜色。

还没有,太复杂了:)

math division
1个回答
0
投票

要将 4266 个球分类到 474 个盒子中,每个盒子有 9 个球,且颜色尽可能少,可以采用以下策略:

  1. 计算每种颜色可以添加到框中的次数,优先考虑均匀分布:
  • 红色:168个球/474个盒子=0.3544→每3个盒子1个(141个盒子有141个球,剩余红球:27个)
  • 绿色:270个球/474个盒子=0.5696→每2个盒子1个(237个盒子有237个球,剩余绿色球:33个)
  • 蓝色:321个球/474个盒子=0.6772→每个盒子1个(保证在所有盒子里,剩余蓝色球:0)
  • 黄色:331个球/474个盒子=0.6979→每盒1个(保证在所有盒子里,剩余黄色球:0个)
  • 橙色:345个球/474个盒子= 0.7289 → 每盒1个,少数盒子额外(放入所有盒子中,21个盒子获得2个橙色球,剩余橙色球:0)
  • 白色:865 个球/474 个盒子 = 1.8244 → 每盒 2 个,少数盒子额外(在所有盒子中放置 2 个,其中 8 个盒子获得第 3 个白球,剩余白球:6 个)
  • 黑色:977 个球/474 个盒子 = 2.0603 → 每盒 2 个,少数盒子额外(在所有盒子中放置 2 个,其中 29 个盒子获得第 3 个黑球,剩余黑球:0)
  • 棕色:989 个球/474 个盒子 = 2.0854 → 每盒 2 个,少数盒子额外(在所有盒子中放置 2 个,41 个盒子获得第 3 个棕色球,剩余棕色球:0)
  1. 创建结合每种颜色计算出的球的盒子。
  2. 分配剩余的球以尽量减少重复:
    • 剩余 27 个红球可以添加到 27 个有 2 个棕球或 2 个白球的盒子中。
    • 剩余的 33 个果岭可以添加到 33 个有 2 个棕色球或 3 个黑色球的盒子中。
  3. 盒子中任何剩余的空位都可以通过尽可能均匀地分布重复项来填充。

通过以这种方式分配球,可以减少重复项并保持框中颜色的相对均匀分布。

© www.soinside.com 2019 - 2024. All rights reserved.