P83 · Packing and covering · Classic · Hard

Equilateral triangles in a square · n = 28

Pack n unit-side equilateral triangles into a square. Contact is allowed; interiors cannot overlap. Minimise the container square side.

Instancen = 28
ObjectiveMinimize container square side

Record comparison

container square side · Lower is better
RecordValue / intervalAuthor / holderSource
External best known[3.75707, 3.75708)28. Found by Jake LoydErich Friedman ↗
Site recordNo player record yet——

Formal definition

  • ContainerThe editor and certificate normalise the container to the unit square [0,1]², while public scores are reported in the literature's unit-piece scale. Boundary contact is allowed.
  • SubmissionSubmit {radius, placements:[{x,y,turn},…]}, with each value written as a decimal string of at most nine places. Here x, y are centre coordinates; circles require turn = 0 and polygons use turn = tan(θ/2). Coordinates and turn must lie in [−4, 4], with 0 < radius ≤ 4.
  • ConstraintsExactly n congruent pieces lie wholly inside the container with pairwise disjoint interiors. Polygons may rotate independently by arbitrary angles.
  • PrecisionInput decimals are parsed as exact rationals and regular-polygon vertices are defined algebraically, with zero floating-point tolerance in feasibility checks.
  • ObjectiveContainer square side = 1/(2 sin(π/3) r), where smaller is better. Pages, leaderboards, and literature records share this unit with automatic conversion.
Open full editor ↗

Layout shown: starter layout

VERIFIED CONSTRUCTIONVERIFIED CONSTRUCTION

Getting a feel for it

Literature targets and coordinate certificates

Literature targets are converted at their published precision, while nine-decimal coordinate certificates are stored and displayed alongside the source values.

Source
The current arrangement for Equilateral triangles in a square n = 28
LAYOUT & HISTORY

Starter layout

Inspect the layout, solver notes and record history.

Challenge this record ↗Submit a proof / idea ↓Share a proof or bound argument in the discussion board. Accepted contributions earn proof points.
ANSWER FORMAT

How to write your answer

the unit square [0,1]²

Submit {radius, placements:[{x,y,turn},…]}, with each value written as a decimal string of at most nine places. Here x, y are centre coordinates; circles require turn = 0 and polygons use turn = tan(θ/2). Coordinates and turn must lie in [−4, 4], with 0 < radius ≤ 4.

Starter answer

{
  "placements": [
    {
      "turn": "0.267949192",
      "x": "0.286752568",
      "y": "0.923164881"
    },
    {
      "turn": "0.267949192",
      "x": "0.552917229",
      "y": "0.923164881"
    },
    {
      "turn": "0.267949192",
      "x": "0.819081889",
      "y": "0.923164881"
    },
    {
      "turn": "-0.000000000",
      "x": "0.076835119",
      "y": "0.866917670"
    },
    {
      "turn": "-0.267949192",
      "x": "0.419834899",
      "y": "0.846329762"
    },
    {
      "turn": "-0.267949192",
      "x": "0.685999559",
      "y": "0.846329762"
    },
    {
      "turn": "-0.531309333",
      "x": "0.913989222",
      "y": "0.740877702"
    },
    {
      "turn": "-0.577350269",
      "x": "0.153670238",
      "y": "0.733835340"
    },
    {
      "turn": "0.267949192",
      "x": "0.370968818",
      "y": "0.692659523"
    },
    {
      "turn": "0.267949192",
      "x": "0.637133478",
      "y": "0.692659523"
    },
    {
      "turn": "-0.267949192",
      "x": "0.504051148",
      "y": "0.615824404"
    },
    {
      "turn": "-0.000000000",
      "x": "0.827597393",
      "y": "0.602717802"
    },
    {
      "turn": "0.000000000",
      "x": "0.076835119",
      "y": "0.600753010"
    },
    {
      "turn": "-0.267949192",
      "x": "0.282907436",
      "y": "0.537845834"
    },
    {
      "turn": "-0.577350269",
      "x": "0.923164881",
      "y": "0.480450610"
    },
    {
      "turn": "0.267949192",
      "x": "0.504051148",
      "y": "0.462154166"
    },
    {
      "turn": "-0.267949192",
      "x": "0.636412312",
      "y": "0.384069952"
    },
    {
      "turn": "-0.267949192",
      "x": "0.133082330",
      "y": "0.333841625"
    },
    {
      "turn": "-0.000000000",
      "x": "0.846329762",
      "y": "0.347368280"
    },
    {
      "turn": "0.267949192",
      "x": "0.281465105",
      "y": "0.384175596"
    },
    {
      "turn": "-0.267949192",
      "x": "0.414547435",
      "y": "0.307340477"
    },
    {
      "turn": "-0.577350269",
      "x": "0.923164881",
      "y": "0.214285950"
    },
    {
      "turn": "0.267949192",
      "x": "0.636412312",
      "y": "0.230399714"
    },
    {
      "turn": "0.267949192",
      "x": "0.133082330",
      "y": "0.180171386"
    },
    {
      "turn": "-0.168440884",
      "x": "0.766302720",
      "y": "0.100568753"
    },
    {
      "turn": "0.267949192",
      "x": "0.383946545",
      "y": "0.153670238"
    },
    {
      "turn": "-0.267949192",
      "x": "0.250864215",
      "y": "0.076835119"
    },
    {
      "turn": "-0.267949192",
      "x": "0.517028876",
      "y": "0.076835119"
    }
  ],
  "radius": "0.153670237"
}
Submission format and technical detailsOpen this when you are ready to prepare a JSON answer+

Instance parameters

{
  "n": 28,
  "sides": 5
}

Starter answer

{
  "placements": [
    {
      "turn": "0.267949192",
      "x": "0.286752568",
      "y": "0.923164881"
    },
    {
      "turn": "0.267949192",
      "x": "0.552917229",
      "y": "0.923164881"
    },
    {
      "turn": "0.267949192",
      "x": "0.819081889",
      "y": "0.923164881"
    },
    {
      "turn": "-0.000000000",
      "x": "0.076835119",
      "y": "0.866917670"
    },
    {
      "turn": "-0.267949192",
      "x": "0.419834899",
      "y": "0.846329762"
    },
    {
      "turn": "-0.267949192",
      "x": "0.685999559",
      "y": "0.846329762"
    },
    {
      "turn": "-0.531309333",
      "x": "0.913989222",
      "y": "0.740877702"
    },
    {
      "turn": "-0.577350269",
      "x": "0.153670238",
      "y": "0.733835340"
    },
    {
      "turn": "0.267949192",
      "x": "0.370968818",
      "y": "0.692659523"
    },
    {
      "turn": "0.267949192",
      "x": "0.637133478",
      "y": "0.692659523"
    },
    {
      "turn": "-0.267949192",
      "x": "0.504051148",
      "y": "0.615824404"
    },
    {
      "turn": "-0.000000000",
      "x": "0.827597393",
      "y": "0.602717802"
    },
    {
      "turn": "0.000000000",
      "x": "0.076835119",
      "y": "0.600753010"
    },
    {
      "turn": "-0.267949192",
      "x": "0.282907436",
      "y": "0.537845834"
    },
    {
      "turn": "-0.577350269",
      "x": "0.923164881",
      "y": "0.480450610"
    },
    {
      "turn": "0.267949192",
      "x": "0.504051148",
      "y": "0.462154166"
    },
    {
      "turn": "-0.267949192",
      "x": "0.636412312",
      "y": "0.384069952"
    },
    {
      "turn": "-0.267949192",
      "x": "0.133082330",
      "y": "0.333841625"
    },
    {
      "turn": "-0.000000000",
      "x": "0.846329762",
      "y": "0.347368280"
    },
    {
      "turn": "0.267949192",
      "x": "0.281465105",
      "y": "0.384175596"
    },
    {
      "turn": "-0.267949192",
      "x": "0.414547435",
      "y": "0.307340477"
    },
    {
      "turn": "-0.577350269",
      "x": "0.923164881",
      "y": "0.214285950"
    },
    {
      "turn": "0.267949192",
      "x": "0.636412312",
      "y": "0.230399714"
    },
    {
      "turn": "0.267949192",
      "x": "0.133082330",
      "y": "0.180171386"
    },
    {
      "turn": "-0.168440884",
      "x": "0.766302720",
      "y": "0.100568753"
    },
    {
      "turn": "0.267949192",
      "x": "0.383946545",
      "y": "0.153670238"
    },
    {
      "turn": "-0.267949192",
      "x": "0.250864215",
      "y": "0.076835119"
    },
    {
      "turn": "-0.267949192",
      "x": "0.517028876",
      "y": "0.076835119"
    }
  ],
  "radius": "0.153670237"
}

Submit {radius, placements:[{x,y,turn},…]}, with each value written as a decimal string of at most nine places. Here x, y are centre coordinates; circles require turn = 0 and polygons use turn = tan(θ/2). Coordinates and turn must lie in [−4, 4], with 0 < radius ≤ 4. · Verifier v1.0.0

DISCUSSION

Discussion

Discuss strategies, share construction methods, or ask questions. Any signed-in user can post under their public byline and unique #UID. New posts appear after moderation.