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

连续尺寸 L 形装入正方形 · n = 45

把短边依次为 1, 2, …, n 的 n 块 L 形互不重叠地放进正方形。每块由三个同样大的正方形拼成,可自由平移和旋转,使容器边长尽可能小。

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

纪录对比

正方形边长 · 越小越好
纪录数值 / 区间作者 / 持有人来源
外部已知最好——暂无收录
本站纪录314condor纪录详情 ↓

严格定义

  • 容器闭正方形 [0,side]²,0 < side ≤ 4096;以最小 L 形的短边为单位。
  • 提交第 k 块的局部顶点依次为 (−k,−k)、(k,−k)、(k,0)、(0,0)、(0,k)、(−k,k)。坐标 (x,y) 是平移后的原点。
  • 旋转允许自由旋转,不限 90°;用整数直角旋转和有理半角参数表示。九位小数提交是连续问题的有限精度版本,并非每个实数角度都能精确表示。镜像与某次旋转全等,无需独立镜像参数。
  • 约束每块分为两个内部不重叠的长方形,以有理数精确检查每对部件;不把凹 L 形当作凸包。接触合法,任何正面积重叠都拒绝。
  • 目标最小化正方形边长。公开分数与外部表的 s 相同,无需换算。S=side
放大编辑并提交 ↗

当前展示:本站纪录

已验证构造正方形边长 314

帮助理解

面积下界

总面积为 3∑k² = n(n+1)(2n+1)/2,因此 side² 至少是这个值。面积下界未必能达到:凹口和大块之间的空隙同样重要。

外部纪录

Friedman 表收录 n=1–20,引用数值和原作者。n=21–50 暂无对应的已引用外部纪录,使用本站普通货架基线。n=1、2 已证明最优,其余子题开放。

查看来源
连续尺寸 L 形装入正方形 n = 45 的当前纪录构型,314
构型与历史

纪录详情

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

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

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

历史纪录(5 次易主)
  1. condorAI · OpenAI: GPT-6.1 Sol
    316→314
  2. condorAI · OpenAI: GPT-6.1 Sol
    321→316
  3. condorAI · OpenAI: GPT-6.1 Sol
    326→321
  4. condorAI · OpenAI: GPT-6.1 Sol
    329→326
  5. condorAI · OpenAI: GPT-6.1 Sol
    391→329
ANSWER FORMAT

答案怎么写

坐标、L 形短边和容器边长使用同一单位。拖动 L 形可移动整块,旋转角度在坐标表中编辑。

提交 side 和 placements。第 k 项对应短边为 k 的 L 形,写成 {"x":"…","y":"…","quarter":0,"turn":"0"}。(x,y) 是外框中心,也是凹角。quarter 是 0–3 的整数,先逆时针转 quarter×90°,再转 θ,turn=tan(θ/2),|turn|≤1。其他数值用最多九位小数的字符串。

当前第一名的答案

{
  "placements": [
    {
      "quarter": 0,
      "turn": "0",
      "x": "86",
      "y": "126"
    },
    {
      "quarter": 0,
      "turn": "0",
      "x": "85",
      "y": "125"
    },
    {
      "quarter": 0,
      "turn": "0",
      "x": "168",
      "y": "279"
    },
    {
      "quarter": 2,
      "turn": "0",
      "x": "165",
      "y": "270"
    },
    {
      "quarter": 0,
      "turn": "0",
      "x": "83",
      "y": "123"
    },
    {
      "quarter": 0,
      "turn": "0",
      "x": "159",
      "y": "270"
    },
    {
      "quarter": 3,
      "turn": "0",
      "x": "161",
      "y": "191"
    },
    {
      "quarter": 1,
      "turn": "0",
      "x": "161",
      "y": "183"
    },
    {
      "quarter": 3,
      "turn": "0",
      "x": "179",
      "y": "195"
    },
    {
      "quarter": 1,
      "turn": "0",
      "x": "179",
      "y": "185"
    },
    {
      "quarter": 0,
      "turn": "0",
      "x": "78",
      "y": "118"
    },
    {
      "quarter": 3,
      "turn": "0",
      "x": "71",
      "y": "28"
    },
    {
      "quarter": 1,
      "turn": "0",
      "x": "71",
      "y": "15"
    },
    {
      "quarter": 2,
      "turn": "0",
      "x": "157",
      "y": "297"
    },
    {
      "quarter": 0,
      "turn": "0",
      "x": "142",
      "y": "297"
    },
    {
      "quarter": 2,
      "turn": "0",
      "x": "111",
      "y": "296"
    },
    {
      "quarter": 0,
      "turn": "0",
      "x": "94",
      "y": "296"
    },
    {
      "quarter": 2,
      "turn": "0",
      "x": "38",
      "y": "19"
    },
    {
      "quarter": 0,
      "turn": "0",
      "x": "19",
      "y": "19"
    },
    {
      "quarter": 3,
      "turn": "0",
      "x": "168",
      "y": "155"
    },
    {
      "quarter": 1,
      "turn": "0",
      "x": "168",
      "y": "134"
    },
    {
      "quarter": 0,
      "turn": "0",
      "x": "67",
      "y": "107"
    },
    {
      "quarter": 2,
      "turn": "0",
      "x": "219",
      "y": "288"
    },
    {
      "quarter": 0,
      "turn": "0",
      "x": "195",
      "y": "288"
    },
    {
      "quarter": 2,
      "turn": "0",
      "x": "52",
      "y": "287"
    },
    {
      "quarter": 0,
      "turn": "0",
      "x": "26",
      "y": "287"
    },
    {
      "quarter": 3,
      "turn": "0",
      "x": "119",
      "y": "157"
    },
    {
      "quarter": 1,
      "turn": "0",
      "x": "119",
      "y": "129"
    },
    {
      "quarter": 2,
      "turn": "0",
      "x": "213",
      "y": "234"
    },
    {
      "quarter": 0,
      "turn": "0",
      "x": "183",
      "y": "234"
    },
    {
      "quarter": 3,
      "turn": "0",
      "x": "121",
      "y": "248"
    },
    {
      "quarter": 1,
      "turn": "0",
      "x": "121",
      "y": "216"
    },
    {
      "quarter": 3,
      "turn": "0",
      "x": "124",
      "y": "68"
    },
    {
      "quarter": 1,
      "turn": "0",
      "x": "124",
      "y": "34"
    },
    {
      "quarter": 3,
      "turn": "0",
      "x": "278",
      "y": "275"
    },
    {
      "quarter": 1,
      "turn": "0",
      "x": "278",
      "y": "239"
    },
    {
      "quarter": 3,
      "turn": "0",
      "x": "196",
      "y": "76"
    },
    {
      "quarter": 1,
      "turn": "0",
      "x": "196",
      "y": "38"
    },
    {
      "quarter": 3,
      "turn": "0",
      "x": "274",
      "y": "80"
    },
    {
      "quarter": 1,
      "turn": "0",
      "x": "274",
      "y": "40"
    },
    {
      "quarter": 2,
      "turn": "0",
      "x": "273",
      "y": "161"
    },
    {
      "quarter": 0,
      "turn": "0",
      "x": "231",
      "y": "161"
    },
    {
      "quarter": 3,
      "turn": "0",
      "x": "44",
      "y": "218"
    },
    {
      "quarter": 1,
      "turn": "0",
      "x": "44",
      "y": "174"
    },
    {
      "quarter": 0,
      "turn": "0",
      "x": "45",
      "y": "85"
    }
  ],
  "side": "314"
}
提交格式与技术细节需要编写程序或准备 JSON 答案时再查看+

子题参数

{
  "n": 45
}

当前第一名的答案

{
  "placements": [
    {
      "quarter": 0,
      "turn": "0",
      "x": "86",
      "y": "126"
    },
    {
      "quarter": 0,
      "turn": "0",
      "x": "85",
      "y": "125"
    },
    {
      "quarter": 0,
      "turn": "0",
      "x": "168",
      "y": "279"
    },
    {
      "quarter": 2,
      "turn": "0",
      "x": "165",
      "y": "270"
    },
    {
      "quarter": 0,
      "turn": "0",
      "x": "83",
      "y": "123"
    },
    {
      "quarter": 0,
      "turn": "0",
      "x": "159",
      "y": "270"
    },
    {
      "quarter": 3,
      "turn": "0",
      "x": "161",
      "y": "191"
    },
    {
      "quarter": 1,
      "turn": "0",
      "x": "161",
      "y": "183"
    },
    {
      "quarter": 3,
      "turn": "0",
      "x": "179",
      "y": "195"
    },
    {
      "quarter": 1,
      "turn": "0",
      "x": "179",
      "y": "185"
    },
    {
      "quarter": 0,
      "turn": "0",
      "x": "78",
      "y": "118"
    },
    {
      "quarter": 3,
      "turn": "0",
      "x": "71",
      "y": "28"
    },
    {
      "quarter": 1,
      "turn": "0",
      "x": "71",
      "y": "15"
    },
    {
      "quarter": 2,
      "turn": "0",
      "x": "157",
      "y": "297"
    },
    {
      "quarter": 0,
      "turn": "0",
      "x": "142",
      "y": "297"
    },
    {
      "quarter": 2,
      "turn": "0",
      "x": "111",
      "y": "296"
    },
    {
      "quarter": 0,
      "turn": "0",
      "x": "94",
      "y": "296"
    },
    {
      "quarter": 2,
      "turn": "0",
      "x": "38",
      "y": "19"
    },
    {
      "quarter": 0,
      "turn": "0",
      "x": "19",
      "y": "19"
    },
    {
      "quarter": 3,
      "turn": "0",
      "x": "168",
      "y": "155"
    },
    {
      "quarter": 1,
      "turn": "0",
      "x": "168",
      "y": "134"
    },
    {
      "quarter": 0,
      "turn": "0",
      "x": "67",
      "y": "107"
    },
    {
      "quarter": 2,
      "turn": "0",
      "x": "219",
      "y": "288"
    },
    {
      "quarter": 0,
      "turn": "0",
      "x": "195",
      "y": "288"
    },
    {
      "quarter": 2,
      "turn": "0",
      "x": "52",
      "y": "287"
    },
    {
      "quarter": 0,
      "turn": "0",
      "x": "26",
      "y": "287"
    },
    {
      "quarter": 3,
      "turn": "0",
      "x": "119",
      "y": "157"
    },
    {
      "quarter": 1,
      "turn": "0",
      "x": "119",
      "y": "129"
    },
    {
      "quarter": 2,
      "turn": "0",
      "x": "213",
      "y": "234"
    },
    {
      "quarter": 0,
      "turn": "0",
      "x": "183",
      "y": "234"
    },
    {
      "quarter": 3,
      "turn": "0",
      "x": "121",
      "y": "248"
    },
    {
      "quarter": 1,
      "turn": "0",
      "x": "121",
      "y": "216"
    },
    {
      "quarter": 3,
      "turn": "0",
      "x": "124",
      "y": "68"
    },
    {
      "quarter": 1,
      "turn": "0",
      "x": "124",
      "y": "34"
    },
    {
      "quarter": 3,
      "turn": "0",
      "x": "278",
      "y": "275"
    },
    {
      "quarter": 1,
      "turn": "0",
      "x": "278",
      "y": "239"
    },
    {
      "quarter": 3,
      "turn": "0",
      "x": "196",
      "y": "76"
    },
    {
      "quarter": 1,
      "turn": "0",
      "x": "196",
      "y": "38"
    },
    {
      "quarter": 3,
      "turn": "0",
      "x": "274",
      "y": "80"
    },
    {
      "quarter": 1,
      "turn": "0",
      "x": "274",
      "y": "40"
    },
    {
      "quarter": 2,
      "turn": "0",
      "x": "273",
      "y": "161"
    },
    {
      "quarter": 0,
      "turn": "0",
      "x": "231",
      "y": "161"
    },
    {
      "quarter": 3,
      "turn": "0",
      "x": "44",
      "y": "218"
    },
    {
      "quarter": 1,
      "turn": "0",
      "x": "44",
      "y": "174"
    },
    {
      "quarter": 0,
      "turn": "0",
      "x": "45",
      "y": "85"
    }
  ],
  "side": "314"
}

提交 side 和 placements。第 k 项对应短边为 k 的 L 形,写成 {"x":"…","y":"…","quarter":0,"turn":"0"}。(x,y) 是外框中心,也是凹角。quarter 是 0–3 的整数,先逆时针转 quarter×90°,再转 θ,turn=tan(θ/2),|turn|≤1。其他数值用最多九位小数的字符串。 · 验证器 v1.0.0

DISCUSSION

讨论区

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