P02 · 装箱与覆盖 · 经典问题 · 基线易突破

单位圆内的等圆装箱 · n = 23

在半径 1 的圆内放置 n 个半径相同、互不重叠的小圆,使共同半径尽可能大。

子题n = 23
目标最大化 共同半径

严格定义

  • 容器半径 1 的圆,圆心在 (1, 1),两个坐标都在 0 到 2 之间
  • 提交恰好 n 个圆:一个共同半径 radius 与 n 个圆心 centers
  • 约束每个圆完整落在容器内;两两内部不重叠,相切允许
  • 目标让共同半径尽可能大
放大来摆,然后提交
2y0
0x2
已验证构造r = 0.180336008

帮助理解

哪里有优化空间

最优构形是「卡死」的接触结构:圆彼此顶住、顶住边界,常出现斜排、错位、以及不碰任何邻居的游离圆。规整的网格摆法几乎从不最优。

前沿在哪里

n = 2..14 与 19 已证明(Specht 汇总表 cci 的粗体标记);15..18 与 20 以上全部开放,包括本站开到的 29。

查看来源
当前第一名

0.180336008

共同半径

纪录保持者创始基准
解题方式人工
挑战这个纪录
ANSWER FORMAT

答案怎么写

容器是半径 1 的圆,圆心在 (1, 1),所以两个坐标都在 0 到 2 之间。坐标和半径用同一个单位,直接写成小数,例如 "0.5",最多九位小数。

提交 radius 与 centers。每个数写成十进制字符串,例如 "0.2"。

当前第一名的答案

{
  "centers": [
    [
      "0.839651315",
      "0.196173304"
    ],
    [
      "1.200211262",
      "0.205163848"
    ],
    [
      "0.510138293",
      "0.34282075"
    ],
    [
      "1.522006038",
      "0.368051621"
    ],
    [
      "0.824903057",
      "0.556543661"
    ],
    [
      "1.220043701",
      "0.565290186"
    ],
    [
      "0.275472945",
      "0.616712114"
    ],
    [
      "1.742729314",
      "0.653298077"
    ],
    [
      "0.575416933",
      "0.817006669"
    ],
    [
      "1.440766976",
      "0.850536642"
    ],
    [
      "1.015796515",
      "0.86255672"
    ],
    [
      "0.181091484",
      "0.964816186"
    ],
    [
      "1.819644356",
      "1.005673418"
    ],
    [
      "0.576786281",
      "1.177676088"
    ],
    [
      "1.408583443",
      "1.209769888"
    ],
    [
      "1.048111383",
      "1.221778176"
    ],
    [
      "0.245268176",
      "1.319732594"
    ],
    [
      "1.737858771",
      "1.356950265"
    ],
    [
      "0.787095149",
      "1.470685448"
    ],
    [
      "1.160327902",
      "1.564548883"
    ],
    [
      "0.455577044",
      "1.612741954"
    ],
    [
      "1.513207993",
      "1.639113928"
    ],
    [
      "0.899311667",
      "1.813456156"
    ]
  ],
  "radius": "0.180336008"
}
提交格式与技术细节需要编写程序或准备 JSON 答案时再查看

子题参数

{
  "n": 23
}

当前第一名的答案

{
  "centers": [
    [
      "0.839651315",
      "0.196173304"
    ],
    [
      "1.200211262",
      "0.205163848"
    ],
    [
      "0.510138293",
      "0.34282075"
    ],
    [
      "1.522006038",
      "0.368051621"
    ],
    [
      "0.824903057",
      "0.556543661"
    ],
    [
      "1.220043701",
      "0.565290186"
    ],
    [
      "0.275472945",
      "0.616712114"
    ],
    [
      "1.742729314",
      "0.653298077"
    ],
    [
      "0.575416933",
      "0.817006669"
    ],
    [
      "1.440766976",
      "0.850536642"
    ],
    [
      "1.015796515",
      "0.86255672"
    ],
    [
      "0.181091484",
      "0.964816186"
    ],
    [
      "1.819644356",
      "1.005673418"
    ],
    [
      "0.576786281",
      "1.177676088"
    ],
    [
      "1.408583443",
      "1.209769888"
    ],
    [
      "1.048111383",
      "1.221778176"
    ],
    [
      "0.245268176",
      "1.319732594"
    ],
    [
      "1.737858771",
      "1.356950265"
    ],
    [
      "0.787095149",
      "1.470685448"
    ],
    [
      "1.160327902",
      "1.564548883"
    ],
    [
      "0.455577044",
      "1.612741954"
    ],
    [
      "1.513207993",
      "1.639113928"
    ],
    [
      "0.899311667",
      "1.813456156"
    ]
  ],
  "radius": "0.180336008"
}

提交 radius 与 centers。每个数写成十进制字符串,例如 "0.2"。 · 验证器 v1.0.0