P92 · 装箱与覆盖 · 经典问题 · 难

单位圆内圆的半径之和 · n = 16

在半径为 1 的圆内放置 n 个互不重叠的圆,每个圆的半径各自随意,使所有半径之和尽可能大。

子题n = 16
目标最大化 半径之和

纪录对比

半径之和 · 越大越好
纪录数值 / 区间作者 / 持有人来源
外部已知最好[3.611, 3.612]见来源署名Erich Friedman ↗
本站纪录暂无选手纪录——

严格定义

  • 容器圆心 (1, 1)、半径 1 的闭圆盘;圆可以与容器边界相切
  • 提交恰好 n 个圆,每个是 [x, y, r],r > 0,全部数字最多九位小数
  • 约束每个圆完整落在圆盘内:(x − 1)² + (y − 1)² ≤ (1 − r)²;任意两圆内部不相交:圆心距 ≥ 半径之和。全部按整数精确判定,相切允许
  • 分数半径之和,精确整数求和后按九位小数显示;越大越好S=Σr
  • 目标在所有合法放置中最大化半径之和maxSΣr
放大来摆,然后提交 ↗

当前展示:起步布局

2y0
0x2
已验证构造计分是全部半径之和

帮助理解

哪里有优化空间

和正方形里一样,等圆是最差的策略之一:一个大圆压在圆心附近,或者几个大圆围成一圈,再让小圆钻进它们和圆周之间的缝隙。圆盘没有角,所以“靠墙的大圆”换成了“沿圆周的一圈”,大小的取舍换了一种几何。

前沿在哪里

Erich Friedman 的“最大化总周长”表列到 n = 50:n ≤ 4 和 6–10 是 Elser 与 Cantrell 的闭式构型,n = 5 是 Haowei Lin 2026 年 7 月的改进,n = 33–50 是 Jonathan Viquerat 2026 年 9 月新加的行。表还在被改写,没有一行有最优性证明;本站展示的是按图重建并精确验算的构型。

查看来源
单位圆内圆的半径之和 n = 16 的当前构型
构型与历史

起步布局

查看构型、求解笔记与纪录历史。

挑战这个纪录 ↗提交证明 / 思路 ↓在讨论区分享证明或思路,审核采纳后可获得证明分。
ANSWER FORMAT

答案怎么写

容器是圆心 (1, 1)、半径 1 的圆盘,所以坐标都在 [0, 2] 之内,不会出现负数。坐标与半径共用一套单位,直接写成小数,最多九位。

提交 circles:恰好 n 个三元组 [x, y, r],每个数写成最多九位小数的十进制字符串,例如 "0.25"。容器是圆心 (1, 1)、半径 1 的闭圆盘。

起步布局答案

{
  "circles": [
    [
      "0.569442453",
      "1.592162239",
      "0.267855260"
    ],
    [
      "1.430130103",
      "1.592472809",
      "0.267855250"
    ],
    [
      "0.303770670",
      "0.773503628",
      "0.267855283"
    ],
    [
      "1.696392641",
      "0.774006192",
      "0.267855265"
    ],
    [
      "1.000264240",
      "0.267855334",
      "0.267855286"
    ],
    [
      "0.648938640",
      "1.113926762",
      "0.216942445"
    ],
    [
      "1.350979083",
      "1.114180100",
      "0.216942437"
    ],
    [
      "0.999866835",
      "1.369084542",
      "0.216942436"
    ],
    [
      "1.217050211",
      "0.701482692",
      "0.216942446"
    ],
    [
      "0.783165341",
      "0.701326112",
      "0.216942451"
    ],
    [
      "0.999713865",
      "1.793013450",
      "0.206986498"
    ],
    [
      "1.754112158",
      "1.245326849",
      "0.206986500"
    ],
    [
      "1.466353172",
      "0.358606908",
      "0.206986519"
    ],
    [
      "0.534109916",
      "0.358270466",
      "0.206986528"
    ],
    [
      "0.245710999",
      "1.244782535",
      "0.206986515"
    ],
    [
      "1.000000023",
      "1.000000042",
      "0.152142086"
    ]
  ]
}
提交格式与技术细节需要编写程序或准备 JSON 答案时再查看+

子题参数

{
  "n": 16
}

起步布局答案

{
  "circles": [
    [
      "0.569442453",
      "1.592162239",
      "0.267855260"
    ],
    [
      "1.430130103",
      "1.592472809",
      "0.267855250"
    ],
    [
      "0.303770670",
      "0.773503628",
      "0.267855283"
    ],
    [
      "1.696392641",
      "0.774006192",
      "0.267855265"
    ],
    [
      "1.000264240",
      "0.267855334",
      "0.267855286"
    ],
    [
      "0.648938640",
      "1.113926762",
      "0.216942445"
    ],
    [
      "1.350979083",
      "1.114180100",
      "0.216942437"
    ],
    [
      "0.999866835",
      "1.369084542",
      "0.216942436"
    ],
    [
      "1.217050211",
      "0.701482692",
      "0.216942446"
    ],
    [
      "0.783165341",
      "0.701326112",
      "0.216942451"
    ],
    [
      "0.999713865",
      "1.793013450",
      "0.206986498"
    ],
    [
      "1.754112158",
      "1.245326849",
      "0.206986500"
    ],
    [
      "1.466353172",
      "0.358606908",
      "0.206986519"
    ],
    [
      "0.534109916",
      "0.358270466",
      "0.206986528"
    ],
    [
      "0.245710999",
      "1.244782535",
      "0.206986515"
    ],
    [
      "1.000000023",
      "1.000000042",
      "0.152142086"
    ]
  ]
}

提交 circles:恰好 n 个三元组 [x, y, r],每个数写成最多九位小数的十进制字符串,例如 "0.25"。容器是圆心 (1, 1)、半径 1 的闭圆盘。 · 验证器 v1.0.0

DISCUSSION

讨论区

聊思路、贴方法、问为什么卡住。所有登录用户都可以发帖;发言公开署名,与纪录使用同一个名字,署名后的 #编号是账号注册序号,冒不了名。新发言经自动审核后公开。