P83 · Packing and covering · Classic · Hard

Equilateral triangles in a square · n = 23

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

Instancen = 23
ObjectiveMinimize container square side
Best known, unproven3.4311Source-precision interval: 3.4311–3.4312 (values inside match)exhibited site certificate 3.431153885Compiled by Erich Friedman; 23. Found by Ian Watson in April 2026. Source expression: s = 3.4311+.

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 = 23, 3.431153885
Current leader

3.431153885

container square side

Matches the best known
Answer source23. Found by Ian Watson
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.199490536",
      "y": "0.915866456"
    },
    {
      "turn": "0.097992519",
      "x": "0.564525472",
      "y": "0.873380526"
    },
    {
      "turn": "-0.453689793",
      "x": "0.399459228",
      "y": "0.840716353"
    },
    {
      "turn": "-0.000000000",
      "x": "0.813725261",
      "y": "0.854276426"
    },
    {
      "turn": "-0.453689793",
      "x": "0.636778241",
      "y": "0.713004879"
    },
    {
      "turn": "-0.000000000",
      "x": "0.084133544",
      "y": "0.717051707"
    },
    {
      "turn": "0.577350269",
      "x": "0.915866456",
      "y": "0.718949574"
    },
    {
      "turn": "0.097992519",
      "x": "0.345214109",
      "y": "0.681432705"
    },
    {
      "turn": "-0.577350269",
      "x": "0.168267089",
      "y": "0.571328134"
    },
    {
      "turn": "-0.000000000",
      "x": "0.831732911",
      "y": "0.573226001"
    },
    {
      "turn": "0.097992519",
      "x": "0.582533122",
      "y": "0.553721232"
    },
    {
      "turn": "-0.453689793",
      "x": "0.417466878",
      "y": "0.521057059"
    },
    {
      "turn": "0.000000000",
      "x": "0.084133544",
      "y": "0.425604560"
    },
    {
      "turn": "-0.577350269",
      "x": "0.915866456",
      "y": "0.427502427"
    },
    {
      "turn": "-0.570741869",
      "x": "0.646710951",
      "y": "0.366673175"
    },
    {
      "turn": "0.004970524",
      "x": "0.356489412",
      "y": "0.337208895"
    },
    {
      "turn": "0.577350269",
      "x": "0.187230556",
      "y": "0.290829549"
    },
    {
      "turn": "0.004970524",
      "x": "0.815755189",
      "y": "0.289335686"
    },
    {
      "turn": "-0.032567793",
      "x": "0.093436993",
      "y": "0.139940493"
    },
    {
      "turn": "-0.541326520",
      "x": "0.908000094",
      "y": "0.140889427"
    },
    {
      "turn": "0.267949192",
      "x": "0.524063042",
      "y": "0.168267089"
    },
    {
      "turn": "-0.267949192",
      "x": "0.378339469",
      "y": "0.084133544"
    },
    {
      "turn": "-0.267949192",
      "x": "0.669786616",
      "y": "0.084133544"
    }
  ],
  "radius": "0.168267087"
}
Submission format and technical detailsOpen this when you are ready to prepare a JSON answer

Instance parameters

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

The current leader's answer

{
  "placements": [
    {
      "turn": "0.267949192",
      "x": "0.199490536",
      "y": "0.915866456"
    },
    {
      "turn": "0.097992519",
      "x": "0.564525472",
      "y": "0.873380526"
    },
    {
      "turn": "-0.453689793",
      "x": "0.399459228",
      "y": "0.840716353"
    },
    {
      "turn": "-0.000000000",
      "x": "0.813725261",
      "y": "0.854276426"
    },
    {
      "turn": "-0.453689793",
      "x": "0.636778241",
      "y": "0.713004879"
    },
    {
      "turn": "-0.000000000",
      "x": "0.084133544",
      "y": "0.717051707"
    },
    {
      "turn": "0.577350269",
      "x": "0.915866456",
      "y": "0.718949574"
    },
    {
      "turn": "0.097992519",
      "x": "0.345214109",
      "y": "0.681432705"
    },
    {
      "turn": "-0.577350269",
      "x": "0.168267089",
      "y": "0.571328134"
    },
    {
      "turn": "-0.000000000",
      "x": "0.831732911",
      "y": "0.573226001"
    },
    {
      "turn": "0.097992519",
      "x": "0.582533122",
      "y": "0.553721232"
    },
    {
      "turn": "-0.453689793",
      "x": "0.417466878",
      "y": "0.521057059"
    },
    {
      "turn": "0.000000000",
      "x": "0.084133544",
      "y": "0.425604560"
    },
    {
      "turn": "-0.577350269",
      "x": "0.915866456",
      "y": "0.427502427"
    },
    {
      "turn": "-0.570741869",
      "x": "0.646710951",
      "y": "0.366673175"
    },
    {
      "turn": "0.004970524",
      "x": "0.356489412",
      "y": "0.337208895"
    },
    {
      "turn": "0.577350269",
      "x": "0.187230556",
      "y": "0.290829549"
    },
    {
      "turn": "0.004970524",
      "x": "0.815755189",
      "y": "0.289335686"
    },
    {
      "turn": "-0.032567793",
      "x": "0.093436993",
      "y": "0.139940493"
    },
    {
      "turn": "-0.541326520",
      "x": "0.908000094",
      "y": "0.140889427"
    },
    {
      "turn": "0.267949192",
      "x": "0.524063042",
      "y": "0.168267089"
    },
    {
      "turn": "-0.267949192",
      "x": "0.378339469",
      "y": "0.084133544"
    },
    {
      "turn": "-0.267949192",
      "x": "0.669786616",
      "y": "0.084133544"
    }
  ],
  "radius": "0.168267087"
}

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?