Pipes

Net · rotate to connect
Solved this year
GitHub
MonWedFri
Streak
0 days
Solved
0
Solve time
—

Rules

PuzzleTeam defines the rules as:

The rules are simple:

1.The goal is to rotate the tiles on the grid so all pipes are connected in a single group.
2.Closed loops are not allowed.

Algorithm

How I actually solve one — the reasoning I run before any code does, written out in full. Read down the right column; the board on the left follows whichever step you are on.

Step 1 / 5
Step 1

Frame the board as sides

A Pipes board of side is a grid of tiles — end-caps, straights, corners and tees — each spun to some arbitrary orientation, and rotating a tile in place by quarter turns is the only move I get. Naively every tile has four positions, so the raw space is

For a modest that is boards. Symmetry trims it a little — an end-cap, a corner and a tee each have four genuinely distinct orientations, but a straight has only two, because a half turn maps it onto itself — useful, but no rescue.

So I never enumerate. The move that makes Pipes tractable is to stop thinking in tiles and start thinking in sides — the shared boundaries between neighbouring tiles. In the finished grid every side is in exactly one of two states, pipe or blocked, and each tile is a small constraint tying its four sides together. The rest of the method is bookkeeping over those sides until the board stops changing.

Test

The robotic solver on real boards: the daily puzzle comes straight from the API, and the samples — 4×4 up to 40×60 — replay recorded solver runs move by move.

Daily Puzzle
fetching the daily puzzle…
Solver trace
awaiting the solver service — the live trace and metrics land together with the API
Fills
—
Backtracks
—
Depth
—
Time
—