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

最小面积三角形内的单位圆装箱 · n = 46

文献中也称circles in arbitrary trianglesunit circles in a minimum-area trianglecircle packing in a triangle of variable shape

在任意三角形中放置 n 个半径为 1、内部互不重叠的圆;三角形的三个顶点也是答案的一部分。让这个三角形的面积尽可能小。

子题n = 46
目标最小化 三角形面积

严格定义

  • 容器容器是形状不预先固定的非退化三角形;三个顶点和所有圆心都位于 0 到 200 的坐标框内
  • 提交三个按逆时针顺序排列的三角形顶点,以及恰好 n 个圆心
  • 每个圆的半径固定为 1;圆的内部两两不相交,相切允许
  • 容纳每个圆都完整落在三角形内,可以与边相切
  • 目标让三角形面积尽可能小
挑战这个纪录
已验证构造46 个半径为 1 的圆

帮助理解

容器也是变量

普通装箱只移动圆;这里连三条边的方向都能改变。一条边转动一点,可能同时释放多个接触,也可能让整套构形失稳。

难点是接触结构

候选最优解通常由圆—圆、圆—边相切关系卡死。真正的搜索不是把圆平均铺开,而是在大量可能的接触图之间找到对的那一张。

从非平凡实例开始

Friedman 的公开表给出了 n≤50 的当前最好已知构形。n=1、2 已证明,n=3 仍是简单的等边三角形排布,因此本站从 n=4 开放;匹配公开构形只是到达前沿,打破它们才是新纪录。

查看来源
最小面积三角形内的单位圆装箱 n = 46 的当前纪录构型,177.887371360134541611
当前第一名

177.887371360134541611

三角形面积

已追平已知最好
答案来源Tej Stead
解题方式公开参考构造
挑战这个纪录
ANSWER FORMAT

答案怎么写

坐标单位就是圆的半径:每个圆半径固定为 1。三个顶点和所有圆心都写在 0≤x,y≤200 的坐标框内,顶点必须逆时针排列。

提交按逆时针排列的三个顶点 triangle,以及恰好 n 个圆心 centers。圆的半径固定为 1;所有数写成最多九位小数的字符串。

当前第一名的答案

{
  "centers": [
    [
      "9.732050871",
      "14.856406557"
    ],
    [
      "10.873614097",
      "13.214202717"
    ],
    [
      "8.732050864",
      "13.124355738"
    ],
    [
      "11.731991069",
      "11.407772805"
    ],
    [
      "7.732050858",
      "11.392304919"
    ],
    [
      "9.732050871",
      "11.392304919"
    ],
    [
      "13.126156741",
      "9.973791588"
    ],
    [
      "10.745416375",
      "9.668039740"
    ],
    [
      "6.732050851",
      "9.660254101"
    ],
    [
      "8.732050864",
      "9.660254101"
    ],
    [
      "13.727279827",
      "8.066266729"
    ],
    [
      "5.732050845",
      "7.928203282"
    ],
    [
      "7.732050858",
      "7.928203282"
    ],
    [
      "9.732050871",
      "7.928203282"
    ],
    [
      "11.732050884",
      "7.928203282"
    ],
    [
      "15.305837364",
      "6.838196636"
    ],
    [
      "12.815771468",
      "6.247265533"
    ],
    [
      "4.732050838",
      "6.196152463"
    ],
    [
      "6.732050851",
      "6.196152463"
    ],
    [
      "8.732050864",
      "6.196152463"
    ],
    [
      "10.732050877",
      "6.196152463"
    ],
    [
      "15.689322207",
      "4.875306057"
    ],
    [
      "3.732050832",
      "4.464101644"
    ],
    [
      "5.732050845",
      "4.464101644"
    ],
    [
      "7.732050858",
      "4.464101644"
    ],
    [
      "9.732050871",
      "4.464101644"
    ],
    [
      "11.732050884",
      "4.464101644"
    ],
    [
      "13.732050897",
      "4.464101644"
    ],
    [
      "17.395605035",
      "3.831946596"
    ],
    [
      "15.102575226",
      "2.898357944"
    ],
    [
      "2.732050825",
      "2.732050825"
    ],
    [
      "4.732050838",
      "2.732050825"
    ],
    [
      "6.732050851",
      "2.732050825"
    ],
    [
      "8.732050864",
      "2.732050825"
    ],
    [
      "10.732050877",
      "2.732050825"
    ],
    [
      "12.732050890",
      "2.732050825"
    ],
    [
      "17.548129070",
      "1.837770959"
    ],
    [
      "1.732050819",
      "1.000000006"
    ],
    [
      "3.732050832",
      "1.000000006"
    ],
    [
      "5.732050845",
      "1.000000006"
    ],
    [
      "7.732050858",
      "1.000000006"
    ],
    [
      "9.732050871",
      "1.000000006"
    ],
    [
      "11.732050884",
      "1.000000006"
    ],
    [
      "13.732050897",
      "1.000000006"
    ],
    [
      "15.732050910",
      "1.000000006"
    ],
    [
      "19.364207230",
      "1.000000006"
    ]
  ],
  "triangle": [
    [
      "0.000000000",
      "0.000000000"
    ],
    [
      "21.277223862",
      "0.000000000"
    ],
    [
      "9.653827248",
      "16.720919281"
    ]
  ]
}
提交格式与技术细节需要编写程序或准备 JSON 答案时再查看

子题参数

{
  "n": 46
}

当前第一名的答案

{
  "centers": [
    [
      "9.732050871",
      "14.856406557"
    ],
    [
      "10.873614097",
      "13.214202717"
    ],
    [
      "8.732050864",
      "13.124355738"
    ],
    [
      "11.731991069",
      "11.407772805"
    ],
    [
      "7.732050858",
      "11.392304919"
    ],
    [
      "9.732050871",
      "11.392304919"
    ],
    [
      "13.126156741",
      "9.973791588"
    ],
    [
      "10.745416375",
      "9.668039740"
    ],
    [
      "6.732050851",
      "9.660254101"
    ],
    [
      "8.732050864",
      "9.660254101"
    ],
    [
      "13.727279827",
      "8.066266729"
    ],
    [
      "5.732050845",
      "7.928203282"
    ],
    [
      "7.732050858",
      "7.928203282"
    ],
    [
      "9.732050871",
      "7.928203282"
    ],
    [
      "11.732050884",
      "7.928203282"
    ],
    [
      "15.305837364",
      "6.838196636"
    ],
    [
      "12.815771468",
      "6.247265533"
    ],
    [
      "4.732050838",
      "6.196152463"
    ],
    [
      "6.732050851",
      "6.196152463"
    ],
    [
      "8.732050864",
      "6.196152463"
    ],
    [
      "10.732050877",
      "6.196152463"
    ],
    [
      "15.689322207",
      "4.875306057"
    ],
    [
      "3.732050832",
      "4.464101644"
    ],
    [
      "5.732050845",
      "4.464101644"
    ],
    [
      "7.732050858",
      "4.464101644"
    ],
    [
      "9.732050871",
      "4.464101644"
    ],
    [
      "11.732050884",
      "4.464101644"
    ],
    [
      "13.732050897",
      "4.464101644"
    ],
    [
      "17.395605035",
      "3.831946596"
    ],
    [
      "15.102575226",
      "2.898357944"
    ],
    [
      "2.732050825",
      "2.732050825"
    ],
    [
      "4.732050838",
      "2.732050825"
    ],
    [
      "6.732050851",
      "2.732050825"
    ],
    [
      "8.732050864",
      "2.732050825"
    ],
    [
      "10.732050877",
      "2.732050825"
    ],
    [
      "12.732050890",
      "2.732050825"
    ],
    [
      "17.548129070",
      "1.837770959"
    ],
    [
      "1.732050819",
      "1.000000006"
    ],
    [
      "3.732050832",
      "1.000000006"
    ],
    [
      "5.732050845",
      "1.000000006"
    ],
    [
      "7.732050858",
      "1.000000006"
    ],
    [
      "9.732050871",
      "1.000000006"
    ],
    [
      "11.732050884",
      "1.000000006"
    ],
    [
      "13.732050897",
      "1.000000006"
    ],
    [
      "15.732050910",
      "1.000000006"
    ],
    [
      "19.364207230",
      "1.000000006"
    ]
  ],
  "triangle": [
    [
      "0.000000000",
      "0.000000000"
    ],
    [
      "21.277223862",
      "0.000000000"
    ],
    [
      "9.653827248",
      "16.720919281"
    ]
  ]
}

提交按逆时针排列的三个顶点 triangle,以及恰好 n 个圆心 centers。圆的半径固定为 1;所有数写成最多九位小数的字符串。 · 验证器 v1.0.0

DISCUSSION

讨论区

聊思路、贴方法、问为什么卡住。发帖即公开署名,与纪录同一个名字;署名后的 #编号是账号的注册序号,冒不了名。发言资格与实绩绑定:破过一次纪录,就永久拥有发言权。新发言经自动审核后公开。

还没有帖子。第一个聊聊这道题的思路?