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

可倾斜等正方形装入圆 · n = 30

文献中也称squares in circlespacking unit squares in a circle

在半径为 1 的圆内放置 n 个大小完全相同、可任意旋转且互不重叠的正方形,使它们的共同边长尽可能大。

子题n = 30
目标最大化 最小边长

纪录对比

最小边长 · 越大越好
纪录数值 / 区间作者 / 持有人来源
外部已知最好[0.2890482508245101, 0.2890490863158382]见来源署名Erich Friedman ↗
本站纪录0.289048614zzzcy纪录详情 ↓

在公布精度内匹配已知最好;不代表精确相等或已证明最优。

严格定义

  • 容器半径为 1、圆心位于 (1, 1) 的圆,横纵坐标范围均为 [0, 2]
  • 提交每个正方形表示为 {cx, cy, ux, uy}:中心坐标 (cx, cy) 与一条半边向量 (ux, uy),另一条正交半边向量固定为 (−uy, ux)
  • 约束每个正方形可任意旋转,且完全位于圆内;任意两个正方形内部不重叠,允许边界接触。公开指标取所有正方形中的最小边长
  • 目标最大化共同边长(验证器在内部通过精确比较边长平方来判定高低)
放大编辑并提交 ↗

当前展示:本站纪录

2y0
0x2
已验证构造30 个正方形

帮助理解

旋转自由度与圆弧边界

正方形的直边无法贴合圆弧,只有顶点能落在圆周上。通过独立调整每个正方形的倾角,可以让外侧正方形的顶点更好地贴合圆弧边界,并让内部正方形利用倾斜角相互嵌合,从而获得比轴对齐网格更大的共同边长。

已知证明与开放前沿

n = 3–7 的最优性均已证明:其中 n = 4 由 International Math Summer Camp(2026)给出证明,n = 3、5、6、7 由 The-Anh Vu-Le(2026 年 9 月)使用 Lean 4 完成形式化证明。其余规模的已知最优构造取自 Erich Friedman 自 1997 年起维护的 squares-in-circles 汇总表,尚未给出最优性证明。

查看来源
可倾斜等正方形装入圆 n = 30 的当前纪录构型,0.289048614
构型与历史

纪录详情

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

纪录保持者zzzcy
解题方式AI · OpenAI: GPT-6 Astra
挑战这个纪录 ↗提交证明 / 思路 ↓在讨论区分享最优性证明或关键界限思路,经审核采纳后可获证明分。
纪录保持者的求解笔记暂无求解笔记(点击展开)+

纪录保持者暂未分享求解过程。

历史纪录(4 次易主)
  1. zzzcyAI · OpenAI: GPT-6 Astra
    0.289048612→0.289048614
  2. 0.28904847→0.289048612
  3. 游侠AI · OpenAI: GPT-5.6 Sol
    0.289048409→0.28904847
  4. 邱仲普AI · OpenAI: GPT-5.6 Sol
    0.28904840912→0.28904840918
ANSWER FORMAT

答案怎么写

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

每个正方形提交 {cx, cy, ux, uy},其中 (cx, cy) 为中心坐标,(ux, uy) 为一条半边向量,另一条正交半边向量固定取 (−uy, ux)。所有数值均以十进制字符串表示(如 "0.4")。由于倾斜正方形的最优边长通常是无理数,无法直接写成精确的有限小数,因此通过提交有理半边向量来唯一确定正方形及其边长。系统以所有正方形中的最小边长作为公开指标,故应使各正方形尺寸尽量一致。

当前第一名的答案

{
  "squares": [
    {
      "cx": "0.495486232",
      "cy": "1.110680623",
      "ux": "0.125216669",
      "uy": "-0.072166899"
    },
    {
      "cx": "1.261963421",
      "cy": "0.880949866",
      "ux": "0.133933320",
      "uy": "0.054305997"
    },
    {
      "cx": "1.557589366",
      "cy": "1.587433354",
      "ux": "0.130353927",
      "uy": "0.062410970"
    },
    {
      "cx": "0.722203346",
      "cy": "0.518455274",
      "ux": "0.125186854",
      "uy": "-0.072218606"
    },
    {
      "cx": "1.573658593",
      "cy": "0.881468813",
      "ux": "0.133933320",
      "uy": "0.054305997"
    },
    {
      "cx": "0.734772655",
      "cy": "0.947005830",
      "ux": "0.125216669",
      "uy": "-0.072166899"
    },
    {
      "cx": "0.577766134",
      "cy": "0.268081566",
      "ux": "0.125186854",
      "uy": "-0.072218606"
    },
    {
      "cx": "1.239714434",
      "cy": "1.789952084",
      "ux": "0.142764398",
      "uy": "-0.022485598"
    },
    {
      "cx": "0.203049317",
      "cy": "0.855490682",
      "ux": "0.142052075",
      "uy": "-0.026618219"
    },
    {
      "cx": "1.811635380",
      "cy": "1.063797293",
      "ux": "0.133933320",
      "uy": "0.054305997"
    },
    {
      "cx": "0.515772885",
      "cy": "0.739577362",
      "ux": "0.125186854",
      "uy": "-0.072218606"
    },
    {
      "cx": "0.169588587",
      "cy": "1.156214327",
      "ux": "0.142033029",
      "uy": "-0.026718798"
    },
    {
      "cx": "0.642398258",
      "cy": "1.713174837",
      "ux": "0.142764398",
      "uy": "-0.022485598"
    },
    {
      "cx": "0.307321575",
      "cy": "1.429064323",
      "ux": "0.139802254",
      "uy": "-0.036641580"
    },
    {
      "cx": "0.951909863",
      "cy": "1.820474053",
      "ux": "0.142764398",
      "uy": "-0.022485598"
    },
    {
      "cx": "1.210440423",
      "cy": "1.501402741",
      "ux": "0.142764399",
      "uy": "-0.022485598"
    },
    {
      "cx": "0.371557178",
      "cy": "0.489075869",
      "ux": "0.125186854",
      "uy": "-0.072218606"
    },
    {
      "cx": "1.762128284",
      "cy": "1.364892465",
      "ux": "0.130353927",
      "uy": "0.062410970"
    },
    {
      "cx": "1.164950573",
      "cy": "1.212580923",
      "ux": "0.142764398",
      "uy": "-0.022485598"
    },
    {
      "cx": "1.456180527",
      "cy": "1.203807219",
      "ux": "0.142764398",
      "uy": "-0.022485598"
    },
    {
      "cx": "0.877748912",
      "cy": "1.246930859",
      "ux": "0.142764398",
      "uy": "-0.022485598"
    },
    {
      "cx": "0.613208501",
      "cy": "1.425160440",
      "ux": "0.142764398",
      "uy": "-0.022485598"
    },
    {
      "cx": "1.011008020",
      "cy": "0.730630169",
      "ux": "0.133933320",
      "uy": "0.054305997"
    },
    {
      "cx": "0.922720106",
      "cy": "1.532459656",
      "ux": "0.142764398",
      "uy": "-0.022485598"
    },
    {
      "cx": "1.497514447",
      "cy": "0.351953702",
      "ux": "0.133933320",
      "uy": "0.054305997"
    },
    {
      "cx": "1.246317397",
      "cy": "0.202229977",
      "ux": "0.133933320",
      "uy": "0.054305997"
    },
    {
      "cx": "1.370674522",
      "cy": "0.612838802",
      "ux": "0.133933320",
      "uy": "0.054305997"
    },
    {
      "cx": "1.700355975",
      "cy": "0.620935262",
      "ux": "0.133933320",
      "uy": "0.054305997"
    },
    {
      "cx": "0.872304595",
      "cy": "0.200201443",
      "ux": "0.125186854",
      "uy": "-0.072218606"
    },
    {
      "cx": "1.118307295",
      "cy": "0.462231259",
      "ux": "0.133933320",
      "uy": "0.054305997"
    }
  ]
}
提交格式与技术细节需要编写程序或准备 JSON 答案时再查看+

子题参数

{
  "n": 30
}

当前第一名的答案

{
  "squares": [
    {
      "cx": "0.495486232",
      "cy": "1.110680623",
      "ux": "0.125216669",
      "uy": "-0.072166899"
    },
    {
      "cx": "1.261963421",
      "cy": "0.880949866",
      "ux": "0.133933320",
      "uy": "0.054305997"
    },
    {
      "cx": "1.557589366",
      "cy": "1.587433354",
      "ux": "0.130353927",
      "uy": "0.062410970"
    },
    {
      "cx": "0.722203346",
      "cy": "0.518455274",
      "ux": "0.125186854",
      "uy": "-0.072218606"
    },
    {
      "cx": "1.573658593",
      "cy": "0.881468813",
      "ux": "0.133933320",
      "uy": "0.054305997"
    },
    {
      "cx": "0.734772655",
      "cy": "0.947005830",
      "ux": "0.125216669",
      "uy": "-0.072166899"
    },
    {
      "cx": "0.577766134",
      "cy": "0.268081566",
      "ux": "0.125186854",
      "uy": "-0.072218606"
    },
    {
      "cx": "1.239714434",
      "cy": "1.789952084",
      "ux": "0.142764398",
      "uy": "-0.022485598"
    },
    {
      "cx": "0.203049317",
      "cy": "0.855490682",
      "ux": "0.142052075",
      "uy": "-0.026618219"
    },
    {
      "cx": "1.811635380",
      "cy": "1.063797293",
      "ux": "0.133933320",
      "uy": "0.054305997"
    },
    {
      "cx": "0.515772885",
      "cy": "0.739577362",
      "ux": "0.125186854",
      "uy": "-0.072218606"
    },
    {
      "cx": "0.169588587",
      "cy": "1.156214327",
      "ux": "0.142033029",
      "uy": "-0.026718798"
    },
    {
      "cx": "0.642398258",
      "cy": "1.713174837",
      "ux": "0.142764398",
      "uy": "-0.022485598"
    },
    {
      "cx": "0.307321575",
      "cy": "1.429064323",
      "ux": "0.139802254",
      "uy": "-0.036641580"
    },
    {
      "cx": "0.951909863",
      "cy": "1.820474053",
      "ux": "0.142764398",
      "uy": "-0.022485598"
    },
    {
      "cx": "1.210440423",
      "cy": "1.501402741",
      "ux": "0.142764399",
      "uy": "-0.022485598"
    },
    {
      "cx": "0.371557178",
      "cy": "0.489075869",
      "ux": "0.125186854",
      "uy": "-0.072218606"
    },
    {
      "cx": "1.762128284",
      "cy": "1.364892465",
      "ux": "0.130353927",
      "uy": "0.062410970"
    },
    {
      "cx": "1.164950573",
      "cy": "1.212580923",
      "ux": "0.142764398",
      "uy": "-0.022485598"
    },
    {
      "cx": "1.456180527",
      "cy": "1.203807219",
      "ux": "0.142764398",
      "uy": "-0.022485598"
    },
    {
      "cx": "0.877748912",
      "cy": "1.246930859",
      "ux": "0.142764398",
      "uy": "-0.022485598"
    },
    {
      "cx": "0.613208501",
      "cy": "1.425160440",
      "ux": "0.142764398",
      "uy": "-0.022485598"
    },
    {
      "cx": "1.011008020",
      "cy": "0.730630169",
      "ux": "0.133933320",
      "uy": "0.054305997"
    },
    {
      "cx": "0.922720106",
      "cy": "1.532459656",
      "ux": "0.142764398",
      "uy": "-0.022485598"
    },
    {
      "cx": "1.497514447",
      "cy": "0.351953702",
      "ux": "0.133933320",
      "uy": "0.054305997"
    },
    {
      "cx": "1.246317397",
      "cy": "0.202229977",
      "ux": "0.133933320",
      "uy": "0.054305997"
    },
    {
      "cx": "1.370674522",
      "cy": "0.612838802",
      "ux": "0.133933320",
      "uy": "0.054305997"
    },
    {
      "cx": "1.700355975",
      "cy": "0.620935262",
      "ux": "0.133933320",
      "uy": "0.054305997"
    },
    {
      "cx": "0.872304595",
      "cy": "0.200201443",
      "ux": "0.125186854",
      "uy": "-0.072218606"
    },
    {
      "cx": "1.118307295",
      "cy": "0.462231259",
      "ux": "0.133933320",
      "uy": "0.054305997"
    }
  ]
}

每个正方形提交 {cx, cy, ux, uy},其中 (cx, cy) 为中心坐标,(ux, uy) 为一条半边向量,另一条正交半边向量固定取 (−uy, ux)。所有数值均以十进制字符串表示(如 "0.4")。由于倾斜正方形的最优边长通常是无理数,无法直接写成精确的有限小数,因此通过提交有理半边向量来唯一确定正方形及其边长。系统以所有正方形中的最小边长作为公开指标,故应使各正方形尺寸尽量一致。 · 验证器 v1.0.0

DISCUSSION

讨论区

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