P90 · Packing and covering · Classic · Hard

Dominoes in a square · n = 20

Pack n 1 × 2 dominoes into a square. Contact is allowed; interiors cannot overlap. Minimise the container square side.

Instancen = 20
ObjectiveMinimize container square side
Best known, unproven6.91421Source-precision interval: 6.91421–6.91422 (values inside match)exhibited site certificate 6.914214826Compiled by Erich Friedman; Found by Maurizio Morandi in August 2026. Source expression: s = 11/2+√2 = 6.91421+.

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,quarter},…]}, with x, y and turn as decimal strings of at most nine places. radius is the piece's short side (the leg, the domino's short side, the cell side); the container side is 1/radius. x,y is the centre of the piece's bounding box; quarter is an integer 0–3, an exact number of right angles applied about the centre before the rational 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/r (r is the piece's short side inside the unit square), smaller is better. Pages, leaderboards and literature records share this unit; nothing is converted by hand.
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 Dominoes in a square n = 20, 6.914214826
Current leader

6.914214826

container square side

Matches the best known
Answer sourceMaurizio Morandi
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,quarter},…]}, with x, y and turn as decimal strings of at most nine places. radius is the piece's short side (the leg, the domino's short side, the cell side); the container side is 1/radius. x,y is the centre of the piece's bounding box; quarter is an integer 0–3, an exact number of right angles applied about the centre before the rational turn = tan(θ/2). Coordinates and turn lie in ±4; 0 < radius ≤ 4.

The current leader's answer

{
  "placements": [
    {
      "turn": "0.000000025",
      "x": "0.289259266",
      "y": "0.927685083"
    },
    {
      "turn": "0.000000185",
      "x": "0.578518456",
      "y": "0.927685144"
    },
    {
      "quarter": 1,
      "turn": "0.000003867",
      "x": "0.927680683",
      "y": "0.855303017"
    },
    {
      "quarter": 1,
      "turn": "0.000000000",
      "x": "0.927685198",
      "y": "0.433888801"
    },
    {
      "quarter": 1,
      "turn": "-0.000000004",
      "x": "0.927685197",
      "y": "0.144629602"
    },
    {
      "turn": "-0.000000011",
      "x": "0.421481388",
      "y": "0.072314805"
    },
    {
      "turn": "0.000000000",
      "x": "0.710740588",
      "y": "0.072314802"
    },
    {
      "quarter": 1,
      "turn": "0.000000000",
      "x": "0.072314802",
      "y": "0.855370399"
    },
    {
      "turn": "0.000000187",
      "x": "0.433888828",
      "y": "0.783055489"
    },
    {
      "quarter": 1,
      "turn": "0.000000000",
      "x": "0.072314802",
      "y": "0.566111200"
    },
    {
      "quarter": 1,
      "turn": "0.000334279",
      "x": "0.072452406",
      "y": "0.146284176"
    },
    {
      "turn": "-0.000000002",
      "x": "0.566111193",
      "y": "0.216944404"
    },
    {
      "quarter": 1,
      "turn": "0.000000178",
      "x": "0.216944454",
      "y": "0.710722311"
    },
    {
      "quarter": 1,
      "turn": "-0.000000005",
      "x": "0.783055596",
      "y": "0.292797539"
    },
    {
      "quarter": 2,
      "turn": "-0.158808341",
      "x": "0.548566187",
      "y": "0.407334977"
    },
    {
      "turn": "0.414213143",
      "x": "0.237142849",
      "y": "0.411726217"
    },
    {
      "turn": "0.414213142",
      "x": "0.298666401",
      "y": "0.268712686"
    },
    {
      "quarter": 2,
      "turn": "-0.143578662",
      "x": "0.449912534",
      "y": "0.591471952"
    },
    {
      "turn": "0.414213546",
      "x": "0.767061999",
      "y": "0.592478575"
    },
    {
      "quarter": 2,
      "turn": "0.414213556",
      "x": "0.701912782",
      "y": "0.731866498"
    }
  ],
  "radius": "0.144629582"
}
Submission format and technical detailsOpen this when you are ready to prepare a JSON answer

Instance parameters

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

The current leader's answer

{
  "placements": [
    {
      "turn": "0.000000025",
      "x": "0.289259266",
      "y": "0.927685083"
    },
    {
      "turn": "0.000000185",
      "x": "0.578518456",
      "y": "0.927685144"
    },
    {
      "quarter": 1,
      "turn": "0.000003867",
      "x": "0.927680683",
      "y": "0.855303017"
    },
    {
      "quarter": 1,
      "turn": "0.000000000",
      "x": "0.927685198",
      "y": "0.433888801"
    },
    {
      "quarter": 1,
      "turn": "-0.000000004",
      "x": "0.927685197",
      "y": "0.144629602"
    },
    {
      "turn": "-0.000000011",
      "x": "0.421481388",
      "y": "0.072314805"
    },
    {
      "turn": "0.000000000",
      "x": "0.710740588",
      "y": "0.072314802"
    },
    {
      "quarter": 1,
      "turn": "0.000000000",
      "x": "0.072314802",
      "y": "0.855370399"
    },
    {
      "turn": "0.000000187",
      "x": "0.433888828",
      "y": "0.783055489"
    },
    {
      "quarter": 1,
      "turn": "0.000000000",
      "x": "0.072314802",
      "y": "0.566111200"
    },
    {
      "quarter": 1,
      "turn": "0.000334279",
      "x": "0.072452406",
      "y": "0.146284176"
    },
    {
      "turn": "-0.000000002",
      "x": "0.566111193",
      "y": "0.216944404"
    },
    {
      "quarter": 1,
      "turn": "0.000000178",
      "x": "0.216944454",
      "y": "0.710722311"
    },
    {
      "quarter": 1,
      "turn": "-0.000000005",
      "x": "0.783055596",
      "y": "0.292797539"
    },
    {
      "quarter": 2,
      "turn": "-0.158808341",
      "x": "0.548566187",
      "y": "0.407334977"
    },
    {
      "turn": "0.414213143",
      "x": "0.237142849",
      "y": "0.411726217"
    },
    {
      "turn": "0.414213142",
      "x": "0.298666401",
      "y": "0.268712686"
    },
    {
      "quarter": 2,
      "turn": "-0.143578662",
      "x": "0.449912534",
      "y": "0.591471952"
    },
    {
      "turn": "0.414213546",
      "x": "0.767061999",
      "y": "0.592478575"
    },
    {
      "quarter": 2,
      "turn": "0.414213556",
      "x": "0.701912782",
      "y": "0.731866498"
    }
  ],
  "radius": "0.144629582"
}

Submit {radius, placements:[{x,y,turn,quarter},…]}, with x, y and turn as decimal strings of at most nine places. radius is the piece's short side (the leg, the domino's short side, the cell side); the container side is 1/radius. x,y is the centre of the piece's bounding box; quarter is an integer 0–3, an exact number of right angles applied about the centre before the rational 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?