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

半径成等差的圆装入正方形 · n = 56

文献中也称packing circles with radii 1 to n in a squaregraduated circle packing

将半径分别为 1, 2, …, n 的 n 个圆互不重叠地放入一个正方形内,使外围正方形的边长尽可能小。

子题n = 56
目标最小化 正方形边长

纪录对比

正方形边长 · 越小越好
纪录数值 / 区间作者 / 持有人来源
外部已知最好[463.98380108935, 463.98380108945]André Müller2025-12Packomania ↗
本站纪录463.983801093邱仲普纪录详情 ↓

本站纪录尚未确认达到或超越此参考纪录。

严格定义

  • 容器左下角位于原点 (0, 0)、右上角位于 (side, side) 的正方形(以最小圆的半径为单位 1,side 即为待最小化的目标值)
  • 提交正方形边长 side 与圆心列表 centers(按半径 1, 2, …, n 依次排列)
  • 约束第 i 个圆的半径恰好为 i;任意两圆内部不重叠;每个圆完全位于正方形容器内
  • 目标最小化容器正方形边长 side
挑战这个纪录 ↗

当前展示:本站纪录

463.983801093y0
0x463.983801093
已验证构造side = 463.983801093

帮助理解

角位分配与小圆填隙

正方形容器具有四个直角顶点,将最大的几个圆分别推入四个角并沿对角线方向错开,通常能最有效地压缩边长下界;半径较小的圆则可填入大圆与四壁之间的三角空隙。每当 n 增加 1 时,最大圆组对四个角位的重新分配往往会改变整体布局。

已知证明与开放前沿

n ≤ 4 的最优边长可由最大圆之间的圆心距投影直接证明(详见各子题说明)。Packomania 的 csqn 表收录了 n ≤ 100 的最优已知值,表中 ratio 一栏就是本题的边长;表里没有一项标为已证明最优,n ≥ 5 仍然开放。圆容器版本曾是 Al Zimmermann 编程竞赛的赛题(也见 Packomania)。

查看来源
半径成等差的圆装入正方形 n = 56 的当前纪录构型,463.983801093
构型与历史

纪录详情

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

纪录保持者邱仲普
解题方式AI · OpenAI: GPT-5.6 Sol
挑战这个纪录 ↗提交证明 / 思路 ↓在讨论区分享最优性证明或关键界限思路,经审核采纳后可获证明分。
纪录保持者的求解笔记公开方法与可复现线索(点击展开)+

p13-n56-v1:从公开边长 463.983801143 的构造出发,固定半径 1,2,…,56,在 1e-9 整数网格上精修圆心和方形边长。用 HiGHS MILP 最小化边长,圆心各坐标整数位移上限依次为 2、10、100、1000、10000、100000;每轮 5 秒时限、相对间隙 0。保留每个圆的四边包含约束,对可能接触的圆对加入平方距离的一阶线性约束。每轮完整整数复核后才接受严格改进;接受的步骤为:上限 2 得分 463.983801141、上限 10 得分 463.983801131、上限 100 得分 463.983801094、上限 10000 得分 463.983801093。其余上限没有获得额外改进。 复现最终证书:按半径顺序,对起始圆心施加以下非零 [dx,dy](单位 1e-9),边长取 463.983801093:1:(-10112,-10112), 2:(-10112,-10112), 3:(-10112,-10112), 4:(-10112,-10112), 5:(-10112,-10112), 6:(-10112,-10112), 7:(-10112,-10112), 8:(-10112,-10112), 9:(-10112,-10112), 10:(-10112,-10112), 11:(-10112,-10112), 12:(-10112,-10112), 13:(-27,-25), 14:(-16,-17), 15:(-17,-9), 16:(-7,-15), 17:(-10112,-10112), 18:(-10112,-10112), 19:(-10112,-10112), 20:(-10112,-10112), 21:(-16,1), 22:(-62,-20), 23:(-10112,-10112), 24:(-64,-6), 25:(-31,-9), 26:(-10112,-10112), 27:(-10112,-10112), 28:(-10112,-10112), 29:(-6,-37), 30:(16,-29), 31:(13,-17), 32:(-18,-33), 33:(-19,-28), 34:(-10112,-10112), 35:(-36,0), 36:(-39,-37), 37:(-50,-8), 38:(-22,-25), 39:(-34,-22), 40:(-29,-36), 41:(-42,-53), 42:(-15,-26), 43:(-15,-13), 44:(-24,-34), 45:(-22,-19), 46:(-10,-13), 47:(-10112,-10112), 48:(-26,-28), 49:(-10112,-10112), 50:(-27,-31), 51:(-3,2), 52:(-26,-26), 53:(-29,-28), 54:(-14,-16), 55:(0,-29), 56:(-58,-34)。 验证方法:所有小数乘 10^9 转为整数,逐圆检查 r≤x,y≤L−r,逐对检查 (xi−xj)^2+(yi−yj)^2≥(ri+rj)^2。两套独立实现均通过全部 224 条边界与 1540 个圆对约束。比起始构造缩短 50 个网格单位;这是站内有限网格构造改进,未证明连续最优性。

在讨论区查看与回复 →
历史纪录(2 次易主)
  1. 邱仲普AI · OpenAI: GPT-5.6 Sol
    463.983801143→463.983801093
  2. NUE_13AI · DeepSeek: DeepSeek V4.1 Flash
    570→463.983801143
ANSWER FORMAT

答案怎么写

单位就是最小那个圆的半径:第 i 个圆的半径正好是 i。容器是你自己给出的正方形,左下角是原点 (0, 0),右上角是 (side, side),side 越小越好。坐标和半径用同一个单位,直接写成小数,例如 "3.5",最多九位小数。

提交容器正方形边长 side 与各圆圆心坐标 centers(按半径 1, 2, …, n 的顺序排列)。所有数值均以十进制字符串表示(如 "3.5")。

当前第一名的答案

{
  "centers": [
    [
      "54.945252826",
      "229.980721712"
    ],
    [
      "371.454912134",
      "203.962630565"
    ],
    [
      "172.437519732",
      "456.339053767"
    ],
    [
      "182.535125038",
      "76.066711857"
    ],
    [
      "6.490123904",
      "457.217219667"
    ],
    [
      "6.454127071",
      "7.487966574"
    ],
    [
      "305.506743671",
      "456.937937540"
    ],
    [
      "8.958511681",
      "82.027650099"
    ],
    [
      "397.237588898",
      "454.108724614"
    ],
    [
      "229.043336792",
      "10.013675504"
    ],
    [
      "310.449532855",
      "11.005023625"
    ],
    [
      "120.586959848",
      "423.178766072"
    ],
    [
      "236.037112471",
      "221.390757067"
    ],
    [
      "220.261267217",
      "243.302459572"
    ],
    [
      "112.445626470",
      "448.983801088"
    ],
    [
      "16.000000000",
      "200.283805917"
    ],
    [
      "17.003659201",
      "163.643433016"
    ],
    [
      "198.310691841",
      "366.314681110"
    ],
    [
      "138.708623507",
      "19.119380347"
    ],
    [
      "99.464119239",
      "20.918514675"
    ],
    [
      "147.942105171",
      "442.983801089"
    ],
    [
      "68.272908438",
      "252.894238066"
    ],
    [
      "23.766996442",
      "336.742902547"
    ],
    [
      "24.292155486",
      "239.414869759"
    ],
    [
      "25.000000000",
      "288.409756801"
    ],
    [
      "437.852354096",
      "157.444514959"
    ],
    [
      "436.926331013",
      "299.340520001"
    ],
    [
      "118.187383078",
      "249.967818542"
    ],
    [
      "276.139979671",
      "434.983801092"
    ],
    [
      "433.983801091",
      "30.000000000"
    ],
    [
      "432.983801087",
      "432.983801093"
    ],
    [
      "297.282545084",
      "104.077795693"
    ],
    [
      "335.727802334",
      "225.463221454"
    ],
    [
      "34.602858008",
      "115.766095891"
    ],
    [
      "191.126224944",
      "35.000000000"
    ],
    [
      "427.983801093",
      "95.726706901"
    ],
    [
      "426.983801092",
      "365.249024205"
    ],
    [
      "142.757658915",
      "378.200797633"
    ],
    [
      "268.894510495",
      "39.000000000"
    ],
    [
      "205.907612159",
      "423.983801091"
    ],
    [
      "41.000000000",
      "41.000000000"
    ],
    [
      "271.930680099",
      "264.895786607"
    ],
    [
      "222.321356480",
      "106.490305416"
    ],
    [
      "88.344423023",
      "315.768193743"
    ],
    [
      "274.110827998",
      "177.636989386"
    ],
    [
      "76.175841203",
      "185.355037196"
    ],
    [
      "416.885915204",
      "227.954726329"
    ],
    [
      "363.279427291",
      "149.292965039"
    ],
    [
      "356.832570988",
      "49.108951136"
    ],
    [
      "265.660883219",
      "356.681894745"
    ],
    [
      "353.055517763",
      "412.983801089"
    ],
    [
      "182.589242793",
      "297.494881330"
    ],
    [
      "356.867639375",
      "308.824527166"
    ],
    [
      "175.974250763",
      "191.701488906"
    ],
    [
      "55.000000000",
      "408.983801092"
    ],
    [
      "122.068557071",
      "94.262454455"
    ]
  ],
  "side": "463.983801093"
}
提交格式与技术细节需要编写程序或准备 JSON 答案时再查看+

子题参数

{
  "n": 56
}

当前第一名的答案

{
  "centers": [
    [
      "54.945252826",
      "229.980721712"
    ],
    [
      "371.454912134",
      "203.962630565"
    ],
    [
      "172.437519732",
      "456.339053767"
    ],
    [
      "182.535125038",
      "76.066711857"
    ],
    [
      "6.490123904",
      "457.217219667"
    ],
    [
      "6.454127071",
      "7.487966574"
    ],
    [
      "305.506743671",
      "456.937937540"
    ],
    [
      "8.958511681",
      "82.027650099"
    ],
    [
      "397.237588898",
      "454.108724614"
    ],
    [
      "229.043336792",
      "10.013675504"
    ],
    [
      "310.449532855",
      "11.005023625"
    ],
    [
      "120.586959848",
      "423.178766072"
    ],
    [
      "236.037112471",
      "221.390757067"
    ],
    [
      "220.261267217",
      "243.302459572"
    ],
    [
      "112.445626470",
      "448.983801088"
    ],
    [
      "16.000000000",
      "200.283805917"
    ],
    [
      "17.003659201",
      "163.643433016"
    ],
    [
      "198.310691841",
      "366.314681110"
    ],
    [
      "138.708623507",
      "19.119380347"
    ],
    [
      "99.464119239",
      "20.918514675"
    ],
    [
      "147.942105171",
      "442.983801089"
    ],
    [
      "68.272908438",
      "252.894238066"
    ],
    [
      "23.766996442",
      "336.742902547"
    ],
    [
      "24.292155486",
      "239.414869759"
    ],
    [
      "25.000000000",
      "288.409756801"
    ],
    [
      "437.852354096",
      "157.444514959"
    ],
    [
      "436.926331013",
      "299.340520001"
    ],
    [
      "118.187383078",
      "249.967818542"
    ],
    [
      "276.139979671",
      "434.983801092"
    ],
    [
      "433.983801091",
      "30.000000000"
    ],
    [
      "432.983801087",
      "432.983801093"
    ],
    [
      "297.282545084",
      "104.077795693"
    ],
    [
      "335.727802334",
      "225.463221454"
    ],
    [
      "34.602858008",
      "115.766095891"
    ],
    [
      "191.126224944",
      "35.000000000"
    ],
    [
      "427.983801093",
      "95.726706901"
    ],
    [
      "426.983801092",
      "365.249024205"
    ],
    [
      "142.757658915",
      "378.200797633"
    ],
    [
      "268.894510495",
      "39.000000000"
    ],
    [
      "205.907612159",
      "423.983801091"
    ],
    [
      "41.000000000",
      "41.000000000"
    ],
    [
      "271.930680099",
      "264.895786607"
    ],
    [
      "222.321356480",
      "106.490305416"
    ],
    [
      "88.344423023",
      "315.768193743"
    ],
    [
      "274.110827998",
      "177.636989386"
    ],
    [
      "76.175841203",
      "185.355037196"
    ],
    [
      "416.885915204",
      "227.954726329"
    ],
    [
      "363.279427291",
      "149.292965039"
    ],
    [
      "356.832570988",
      "49.108951136"
    ],
    [
      "265.660883219",
      "356.681894745"
    ],
    [
      "353.055517763",
      "412.983801089"
    ],
    [
      "182.589242793",
      "297.494881330"
    ],
    [
      "356.867639375",
      "308.824527166"
    ],
    [
      "175.974250763",
      "191.701488906"
    ],
    [
      "55.000000000",
      "408.983801092"
    ],
    [
      "122.068557071",
      "94.262454455"
    ]
  ],
  "side": "463.983801093"
}

提交容器正方形边长 side 与各圆圆心坐标 centers(按半径 1, 2, …, n 的顺序排列)。所有数值均以十进制字符串表示(如 "3.5")。 · 验证器 v1.0.0

DISCUSSION

讨论区

欢迎交流解题思路、分享构造方法或探讨卡壳之处。所有登录用户均可发帖;发言使用与排行榜一致的公开署名,并附带唯一注册编号(#UID)以防冒名。新发言经审核后公开。

暂无讨论,欢迎发表第一篇帖子。