P87 · Packing and covering · Classic · Easy

Equal discs covering a disc · n = 40

Cover the largest possible disc with n unit-radius discs. Maximise the covered disc radius.

Instancen = 40
ObjectiveMaximize covered disc radius

Record comparison

covered disc radius · Higher is better
RecordValue / intervalAuthor / holderSource
External best known——No reference listed
Site recordNo player record yet——

Formal definition

  • ContainerThe editor and certificate normalize to the closed unit disc centred at (1,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.
  • ConstraintsThe n distinct centres lie in the target disc. Covering discs may overlap and protrude, but must cover every target point.
  • 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.
  • ObjectiveCovered disc radius R = 1/r, larger is better.
Open the full editor ↗

Layout shown: starter layout

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 current arrangement for Equal discs covering a disc n = 40
LAYOUT & HISTORY

Starter layout

Inspect the layout, solver notes and record history.

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

How to write your answer

the closed unit disc centred at (1,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.

Starter answer

{
  "placements": [
    {
      "turn": "0",
      "x": "0.995820246",
      "y": "1.038986681"
    },
    {
      "turn": "0",
      "x": "1.185839681",
      "y": "0.776430324"
    },
    {
      "turn": "0",
      "x": "0.870252691",
      "y": "0.742661589"
    },
    {
      "turn": "0",
      "x": "1.315236276",
      "y": "1.079271935"
    },
    {
      "turn": "0",
      "x": "0.671661095",
      "y": "1.002893955"
    },
    {
      "turn": "0",
      "x": "1.123333791",
      "y": "1.334452400"
    },
    {
      "turn": "0",
      "x": "0.798309241",
      "y": "1.299199419"
    },
    {
      "turn": "0",
      "x": "1.065096971",
      "y": "0.473966161"
    },
    {
      "turn": "0",
      "x": "1.507206750",
      "y": "0.822042430"
    },
    {
      "turn": "0",
      "x": "0.547236550",
      "y": "0.705059319"
    },
    {
      "turn": "0",
      "x": "1.382900020",
      "y": "0.519484276"
    },
    {
      "turn": "0",
      "x": "0.744097601",
      "y": "0.447421066"
    },
    {
      "turn": "0",
      "x": "1.448177492",
      "y": "1.379273423"
    },
    {
      "turn": "0",
      "x": "0.474871950",
      "y": "1.265139979"
    },
    {
      "turn": "0",
      "x": "0.930308581",
      "y": "1.594698439"
    },
    {
      "turn": "0",
      "x": "1.635032528",
      "y": "1.127328981"
    },
    {
      "turn": "0",
      "x": "0.353725717",
      "y": "0.976055370"
    },
    {
      "turn": "0",
      "x": "1.255314936",
      "y": "1.630905505"
    },
    {
      "turn": "0",
      "x": "0.604581436",
      "y": "1.559053930"
    },
    {
      "turn": "0",
      "x": "1.301628131",
      "y": "0.223823572"
    },
    {
      "turn": "0",
      "x": "0.887386995",
      "y": "0.178551011"
    },
    {
      "turn": "0",
      "x": "1.661832730",
      "y": "0.501733516"
    },
    {
      "turn": "0",
      "x": "0.473588617",
      "y": "0.358049877"
    },
    {
      "turn": "0",
      "x": "1.835286983",
      "y": "0.895765338"
    },
    {
      "turn": "0",
      "x": "0.212586314",
      "y": "0.705339841"
    },
    {
      "turn": "0",
      "x": "1.767212756",
      "y": "1.436820788"
    },
    {
      "turn": "0",
      "x": "0.151597440",
      "y": "1.245360405"
    },
    {
      "turn": "0",
      "x": "1.592744434",
      "y": "0.224926094"
    },
    {
      "turn": "0",
      "x": "0.611679283",
      "y": "0.107366483"
    },
    {
      "turn": "0",
      "x": "1.596371252",
      "y": "1.656330688"
    },
    {
      "turn": "0",
      "x": "0.268277615",
      "y": "1.494896369"
    },
    {
      "turn": "0",
      "x": "1.036556947",
      "y": "1.886527271"
    },
    {
      "turn": "0",
      "x": "0.753838078",
      "y": "1.855695757"
    },
    {
      "turn": "0",
      "x": "1.945947670",
      "y": "1.165950165"
    },
    {
      "turn": "0",
      "x": "0.042537732",
      "y": "0.940250524"
    },
    {
      "turn": "0",
      "x": "1.370301496",
      "y": "1.901976860"
    },
    {
      "turn": "0",
      "x": "1.100963697",
      "y": "0.111796086"
    },
    {
      "turn": "0",
      "x": "0.422932639",
      "y": "1.790360934"
    },
    {
      "turn": "0",
      "x": "1.823325542",
      "y": "0.653876465"
    },
    {
      "turn": "0",
      "x": "0.277298101",
      "y": "0.471645448"
    }
  ],
  "radius": "0.187786232"
}
Submission format and technical detailsOpen this when you are ready to prepare a JSON answer+

Instance parameters

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

Starter answer

{
  "placements": [
    {
      "turn": "0",
      "x": "0.995820246",
      "y": "1.038986681"
    },
    {
      "turn": "0",
      "x": "1.185839681",
      "y": "0.776430324"
    },
    {
      "turn": "0",
      "x": "0.870252691",
      "y": "0.742661589"
    },
    {
      "turn": "0",
      "x": "1.315236276",
      "y": "1.079271935"
    },
    {
      "turn": "0",
      "x": "0.671661095",
      "y": "1.002893955"
    },
    {
      "turn": "0",
      "x": "1.123333791",
      "y": "1.334452400"
    },
    {
      "turn": "0",
      "x": "0.798309241",
      "y": "1.299199419"
    },
    {
      "turn": "0",
      "x": "1.065096971",
      "y": "0.473966161"
    },
    {
      "turn": "0",
      "x": "1.507206750",
      "y": "0.822042430"
    },
    {
      "turn": "0",
      "x": "0.547236550",
      "y": "0.705059319"
    },
    {
      "turn": "0",
      "x": "1.382900020",
      "y": "0.519484276"
    },
    {
      "turn": "0",
      "x": "0.744097601",
      "y": "0.447421066"
    },
    {
      "turn": "0",
      "x": "1.448177492",
      "y": "1.379273423"
    },
    {
      "turn": "0",
      "x": "0.474871950",
      "y": "1.265139979"
    },
    {
      "turn": "0",
      "x": "0.930308581",
      "y": "1.594698439"
    },
    {
      "turn": "0",
      "x": "1.635032528",
      "y": "1.127328981"
    },
    {
      "turn": "0",
      "x": "0.353725717",
      "y": "0.976055370"
    },
    {
      "turn": "0",
      "x": "1.255314936",
      "y": "1.630905505"
    },
    {
      "turn": "0",
      "x": "0.604581436",
      "y": "1.559053930"
    },
    {
      "turn": "0",
      "x": "1.301628131",
      "y": "0.223823572"
    },
    {
      "turn": "0",
      "x": "0.887386995",
      "y": "0.178551011"
    },
    {
      "turn": "0",
      "x": "1.661832730",
      "y": "0.501733516"
    },
    {
      "turn": "0",
      "x": "0.473588617",
      "y": "0.358049877"
    },
    {
      "turn": "0",
      "x": "1.835286983",
      "y": "0.895765338"
    },
    {
      "turn": "0",
      "x": "0.212586314",
      "y": "0.705339841"
    },
    {
      "turn": "0",
      "x": "1.767212756",
      "y": "1.436820788"
    },
    {
      "turn": "0",
      "x": "0.151597440",
      "y": "1.245360405"
    },
    {
      "turn": "0",
      "x": "1.592744434",
      "y": "0.224926094"
    },
    {
      "turn": "0",
      "x": "0.611679283",
      "y": "0.107366483"
    },
    {
      "turn": "0",
      "x": "1.596371252",
      "y": "1.656330688"
    },
    {
      "turn": "0",
      "x": "0.268277615",
      "y": "1.494896369"
    },
    {
      "turn": "0",
      "x": "1.036556947",
      "y": "1.886527271"
    },
    {
      "turn": "0",
      "x": "0.753838078",
      "y": "1.855695757"
    },
    {
      "turn": "0",
      "x": "1.945947670",
      "y": "1.165950165"
    },
    {
      "turn": "0",
      "x": "0.042537732",
      "y": "0.940250524"
    },
    {
      "turn": "0",
      "x": "1.370301496",
      "y": "1.901976860"
    },
    {
      "turn": "0",
      "x": "1.100963697",
      "y": "0.111796086"
    },
    {
      "turn": "0",
      "x": "0.422932639",
      "y": "1.790360934"
    },
    {
      "turn": "0",
      "x": "1.823325542",
      "y": "0.653876465"
    },
    {
      "turn": "0",
      "x": "0.277298101",
      "y": "0.471645448"
    }
  ],
  "radius": "0.187786232"
}

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?