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

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

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

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

严格定义

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

帮助理解

哪里有优化空间

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

前沿在哪里

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

查看来源
当前第一名

0.190392146

共同半径

已追平已知最好
纪录保持者创始基准
解题方式人工
挑战这个纪录
历史纪录(2 次易主)
  1. 匿名人工
    0.1858138560.190392146
  2. NUE_13人工
    0.0596169060.185813856
ANSWER FORMAT

答案怎么写

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

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

当前第一名的答案

{
  "centers": [
    [
      "0.809607853",
      "0.213097397"
    ],
    [
      "1.190392147",
      "0.213097397"
    ],
    [
      "0.470940582",
      "0.387169674"
    ],
    [
      "1.529059418",
      "0.387169674"
    ],
    [
      "1",
      "0.542866269"
    ],
    [
      "0.249307588",
      "0.696807357"
    ],
    [
      "1.750692412",
      "0.696807357"
    ],
    [
      "0.661332729",
      "0.716938546"
    ],
    [
      "1.338667271",
      "0.716938546"
    ],
    [
      "1",
      "1"
    ],
    [
      "0.193736744",
      "1.073514882"
    ],
    [
      "1.806263256",
      "1.073514882"
    ],
    [
      "0.574259198",
      "1.087633675"
    ],
    [
      "1.425740802",
      "1.087633675"
    ],
    [
      "0.809607853",
      "1.386979109"
    ],
    [
      "1.190392147",
      "1.386979109"
    ],
    [
      "0.316520985",
      "1.433960035"
    ],
    [
      "1.683479015",
      "1.433960035"
    ],
    [
      "0.590498968",
      "1.698408033"
    ],
    [
      "1.409501032",
      "1.698408033"
    ],
    [
      "1",
      "1.777223539"
    ]
  ],
  "radius": "0.190392146"
}
提交格式与技术细节需要编写程序或准备 JSON 答案时再查看

子题参数

{
  "n": 21
}

当前第一名的答案

{
  "centers": [
    [
      "0.809607853",
      "0.213097397"
    ],
    [
      "1.190392147",
      "0.213097397"
    ],
    [
      "0.470940582",
      "0.387169674"
    ],
    [
      "1.529059418",
      "0.387169674"
    ],
    [
      "1",
      "0.542866269"
    ],
    [
      "0.249307588",
      "0.696807357"
    ],
    [
      "1.750692412",
      "0.696807357"
    ],
    [
      "0.661332729",
      "0.716938546"
    ],
    [
      "1.338667271",
      "0.716938546"
    ],
    [
      "1",
      "1"
    ],
    [
      "0.193736744",
      "1.073514882"
    ],
    [
      "1.806263256",
      "1.073514882"
    ],
    [
      "0.574259198",
      "1.087633675"
    ],
    [
      "1.425740802",
      "1.087633675"
    ],
    [
      "0.809607853",
      "1.386979109"
    ],
    [
      "1.190392147",
      "1.386979109"
    ],
    [
      "0.316520985",
      "1.433960035"
    ],
    [
      "1.683479015",
      "1.433960035"
    ],
    [
      "0.590498968",
      "1.698408033"
    ],
    [
      "1.409501032",
      "1.698408033"
    ],
    [
      "1",
      "1.777223539"
    ]
  ],
  "radius": "0.190392146"
}

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