P83 · Packing and covering · Classic · Hard

Equilateral triangles in a square · n = 40

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

Instancen = 40
ObjectiveMinimize container square side
Best known, unproven4.41057Source-precision interval: 4.41057–4.41058 (values inside match)exhibited site certificate 4.410574419Compiled by Erich Friedman; 40. Found by Thomas Schadt in July 2026. Source expression: s = 4.41057+.

Formal definition

  • ContainerThe editor and certificate normalize to the unit square [0,1]². This is a coordinate convention only; scores use the literature's unit-piece scale. Boundary contact is allowed.
  • SubmissionSubmit {radius, placements:[{x,y,turn},…]}, with decimal strings of at most nine places. x,y are centres; circles require turn=0, polygons use turn=tan(θ/2). Coordinates and turn lie in ±4; 0 < radius ≤ 4.
  • ConstraintsExactly n congruent shapes lie wholly in the container with pairwise disjoint interiors. Polygon rotations are independent, not limited to quarter turns.
  • PrecisionInput decimals are exact rationals; regular-polygon vertices are algebraic, not rounded templates. Feasibility has no floating-point tolerance. A finite-decimal certificate is not a continuous optimality proof.
  • Objectivecontainer square side = 1/(2 sin(pi/3) r), smaller is better. Pages, leaderboards and literature share these units; conversion is automatic.
Open the full editor
VERIFIED CONSTRUCTIONVERIFIED CONSTRUCTION

Getting a feel for it

Source and certificate

External targets are converted with their printed precision; decimal coordinate certificates are separate. Reconstruction loss never lowers the literature target, and a source construction is not automatically an optimality proof.

Source
The record-holding arrangement for Equilateral triangles in a square n = 40, 4.410574419
Current leader

4.410574419

container square side

Matches the best known
Answer source40. Found by Thomas Schadt
Solution methodPublished reference construction
Challenge this record Submit a proof / idea Share a proof or idea in the discussion. Accepted contributions can earn proof points.
Record holder's solver noteNo solver note yet (expand)

The record holder has not shared a solver note yet.

ANSWER FORMAT

How to write your answer

the unit square [0,1]²

Submit {radius, placements:[{x,y,turn},…]}, with decimal strings of at most nine places. x,y are centres; circles require turn=0, polygons use turn=tan(θ/2). Coordinates and turn lie in ±4; 0 < radius ≤ 4.

The current leader's answer

{
  "placements": [
    {
      "turn": "0.267949192",
      "x": "0.340091760",
      "y": "0.934549310"
    },
    {
      "turn": "0.267949192",
      "x": "0.113363920",
      "y": "0.934549310"
    },
    {
      "turn": "0.262878457",
      "x": "0.791084123",
      "y": "0.933478247"
    },
    {
      "turn": "0.262878457",
      "x": "0.565883648",
      "y": "0.932939941"
    },
    {
      "turn": "-0.267949192",
      "x": "0.226727840",
      "y": "0.869098620"
    },
    {
      "turn": "-0.273032817",
      "x": "0.453121140",
      "y": "0.866412456"
    },
    {
      "turn": "-0.273032817",
      "x": "0.678622406",
      "y": "0.866418188"
    },
    {
      "turn": "0.577350269",
      "x": "0.934549310",
      "y": "0.825977208"
    },
    {
      "turn": "0.000000000",
      "x": "0.065450690",
      "y": "0.755734700"
    },
    {
      "turn": "0.262878457",
      "x": "0.282030080",
      "y": "0.737126177"
    },
    {
      "turn": "0.262878457",
      "x": "0.508747745",
      "y": "0.734978176"
    },
    {
      "turn": "0.259396419",
      "x": "0.737986685",
      "y": "0.734210784"
    },
    {
      "turn": "-0.273032817",
      "x": "0.622743491",
      "y": "0.670586723"
    },
    {
      "turn": "-0.273032817",
      "x": "0.394768838",
      "y": "0.670604424"
    },
    {
      "turn": "-0.277099696",
      "x": "0.850363664",
      "y": "0.666836056"
    },
    {
      "turn": "0.577350269",
      "x": "0.130901380",
      "y": "0.642370780"
    },
    {
      "turn": "0.262878457",
      "x": "0.309090827",
      "y": "0.540508913"
    },
    {
      "turn": "0.262878457",
      "x": "0.535808493",
      "y": "0.538360912"
    },
    {
      "turn": "0.258384084",
      "x": "0.760769782",
      "y": "0.537419864"
    },
    {
      "turn": "0.000000000",
      "x": "0.065450690",
      "y": "0.529006860"
    },
    {
      "turn": "-0.577350269",
      "x": "0.934549310",
      "y": "0.481723559"
    },
    {
      "turn": "-0.273032817",
      "x": "0.421829585",
      "y": "0.473987160"
    },
    {
      "turn": "-0.277560266",
      "x": "0.648513027",
      "y": "0.469926486"
    },
    {
      "turn": "0.492106351",
      "x": "0.159722542",
      "y": "0.415642940"
    },
    {
      "turn": "-0.000000000",
      "x": "0.869098620",
      "y": "0.368359639"
    },
    {
      "turn": "0.249158679",
      "x": "0.383921601",
      "y": "0.341425456"
    },
    {
      "turn": "0.249158679",
      "x": "0.607863204",
      "y": "0.338419976"
    },
    {
      "turn": "-0.066383257",
      "x": "0.079861271",
      "y": "0.311925301"
    },
    {
      "turn": "-0.286917922",
      "x": "0.272616084",
      "y": "0.271927419"
    },
    {
      "turn": "-0.286917922",
      "x": "0.494910144",
      "y": "0.272022902"
    },
    {
      "turn": "-0.286917922",
      "x": "0.720598837",
      "y": "0.271811367"
    },
    {
      "turn": "-0.577350269",
      "x": "0.934549310",
      "y": "0.254995718"
    },
    {
      "turn": "0.249158679",
      "x": "0.555657159",
      "y": "0.138844568"
    },
    {
      "turn": "0.249158679",
      "x": "0.110988543",
      "y": "0.138805108"
    },
    {
      "turn": "0.249158679",
      "x": "0.778022914",
      "y": "0.138805108"
    },
    {
      "turn": "0.249158679",
      "x": "0.333333333",
      "y": "0.138805108"
    },
    {
      "turn": "-0.286917922",
      "x": "0.444321876",
      "y": "0.069402554"
    },
    {
      "turn": "-0.286917922",
      "x": "0.889011457",
      "y": "0.069402554"
    },
    {
      "turn": "-0.286917922",
      "x": "0.666645702",
      "y": "0.069442014"
    },
    {
      "turn": "-0.286917922",
      "x": "0.221977086",
      "y": "0.069402554"
    }
  ],
  "radius": "0.130901378"
}
Submission format and technical detailsOpen this when you are ready to prepare a JSON answer

Instance parameters

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

The current leader's answer

{
  "placements": [
    {
      "turn": "0.267949192",
      "x": "0.340091760",
      "y": "0.934549310"
    },
    {
      "turn": "0.267949192",
      "x": "0.113363920",
      "y": "0.934549310"
    },
    {
      "turn": "0.262878457",
      "x": "0.791084123",
      "y": "0.933478247"
    },
    {
      "turn": "0.262878457",
      "x": "0.565883648",
      "y": "0.932939941"
    },
    {
      "turn": "-0.267949192",
      "x": "0.226727840",
      "y": "0.869098620"
    },
    {
      "turn": "-0.273032817",
      "x": "0.453121140",
      "y": "0.866412456"
    },
    {
      "turn": "-0.273032817",
      "x": "0.678622406",
      "y": "0.866418188"
    },
    {
      "turn": "0.577350269",
      "x": "0.934549310",
      "y": "0.825977208"
    },
    {
      "turn": "0.000000000",
      "x": "0.065450690",
      "y": "0.755734700"
    },
    {
      "turn": "0.262878457",
      "x": "0.282030080",
      "y": "0.737126177"
    },
    {
      "turn": "0.262878457",
      "x": "0.508747745",
      "y": "0.734978176"
    },
    {
      "turn": "0.259396419",
      "x": "0.737986685",
      "y": "0.734210784"
    },
    {
      "turn": "-0.273032817",
      "x": "0.622743491",
      "y": "0.670586723"
    },
    {
      "turn": "-0.273032817",
      "x": "0.394768838",
      "y": "0.670604424"
    },
    {
      "turn": "-0.277099696",
      "x": "0.850363664",
      "y": "0.666836056"
    },
    {
      "turn": "0.577350269",
      "x": "0.130901380",
      "y": "0.642370780"
    },
    {
      "turn": "0.262878457",
      "x": "0.309090827",
      "y": "0.540508913"
    },
    {
      "turn": "0.262878457",
      "x": "0.535808493",
      "y": "0.538360912"
    },
    {
      "turn": "0.258384084",
      "x": "0.760769782",
      "y": "0.537419864"
    },
    {
      "turn": "0.000000000",
      "x": "0.065450690",
      "y": "0.529006860"
    },
    {
      "turn": "-0.577350269",
      "x": "0.934549310",
      "y": "0.481723559"
    },
    {
      "turn": "-0.273032817",
      "x": "0.421829585",
      "y": "0.473987160"
    },
    {
      "turn": "-0.277560266",
      "x": "0.648513027",
      "y": "0.469926486"
    },
    {
      "turn": "0.492106351",
      "x": "0.159722542",
      "y": "0.415642940"
    },
    {
      "turn": "-0.000000000",
      "x": "0.869098620",
      "y": "0.368359639"
    },
    {
      "turn": "0.249158679",
      "x": "0.383921601",
      "y": "0.341425456"
    },
    {
      "turn": "0.249158679",
      "x": "0.607863204",
      "y": "0.338419976"
    },
    {
      "turn": "-0.066383257",
      "x": "0.079861271",
      "y": "0.311925301"
    },
    {
      "turn": "-0.286917922",
      "x": "0.272616084",
      "y": "0.271927419"
    },
    {
      "turn": "-0.286917922",
      "x": "0.494910144",
      "y": "0.272022902"
    },
    {
      "turn": "-0.286917922",
      "x": "0.720598837",
      "y": "0.271811367"
    },
    {
      "turn": "-0.577350269",
      "x": "0.934549310",
      "y": "0.254995718"
    },
    {
      "turn": "0.249158679",
      "x": "0.555657159",
      "y": "0.138844568"
    },
    {
      "turn": "0.249158679",
      "x": "0.110988543",
      "y": "0.138805108"
    },
    {
      "turn": "0.249158679",
      "x": "0.778022914",
      "y": "0.138805108"
    },
    {
      "turn": "0.249158679",
      "x": "0.333333333",
      "y": "0.138805108"
    },
    {
      "turn": "-0.286917922",
      "x": "0.444321876",
      "y": "0.069402554"
    },
    {
      "turn": "-0.286917922",
      "x": "0.889011457",
      "y": "0.069402554"
    },
    {
      "turn": "-0.286917922",
      "x": "0.666645702",
      "y": "0.069442014"
    },
    {
      "turn": "-0.286917922",
      "x": "0.221977086",
      "y": "0.069402554"
    }
  ],
  "radius": "0.130901378"
}

Submit {radius, placements:[{x,y,turn},…]}, with decimal strings of at most nine places. x,y are centres; circles require turn=0, polygons use turn=tan(θ/2). Coordinates and turn lie in ±4; 0 < radius ≤ 4. · Verifier v1.0.0

DISCUSSION

Discussion

Talk strategy, share methods, ask why you are stuck. Every signed-in user can post. Posts carry your public byline, the same name your records use; the #number after it is the account's signup ordinal, so a name cannot be worn by someone else. New posts appear after an automated review.

No threads yet. Be the first to talk about this problem?