GenerateRandomSearch

Aquarium Puzzle Generator

Aquarium divides a grid into tanks and asks you to work out how much water is in each. Water behaves as water does: if one square of a tank is wet, every square of that same tank below it is wet as well, right across the tank. The numbers beside the rows and under the columns count the wet squares, and every grid here is checked to have one arrangement and no other.

What this generator does

Cuts the grid into tanks, pours a random amount into each, reads the row and column counts off the result, and keeps the grid only when those counts lead back to that water and no other.

How to use this tool

  1. Choose a grid size and how the tanks are cut — many small tanks make a busier puzzle than a few large ones.
  2. Print or copy the grid; the thick lines are the tank walls.
  3. Shade the water, keeping each tank level right across its width and filled from the bottom.
  4. Match every count beside a row and under a column exactly.
  5. Show the answer to check your levels.

Understanding the controls

Grid
Five to ten squares a side. Ten is the ceiling because the work is in the number of tanks rather than the grid, and a busier twelve-by-twelve took four hundred times as long to prove.
Tanks
How the grid is divided. Many small tanks give more independent decisions and a longer solve; a few large ones give a shorter puzzle with wider consequences per move.
Seed (optional)
Type anything to rebuild the same puzzle later, which is how you reprint a page you have lost. Deterministic, not cryptographic.

Common use cases

  • A logic puzzle that rewards spatial reasoning rather than arithmetic
  • A printable page for a puzzle club, a newsletter or a waiting room
  • Classroom work on reasoning from constraints, with the answer to hand
  • A change of scene for solvers who have exhausted the usual shading puzzles
  • Reprinting the identical grid later from its seed

How this generator works

Uniqueness is proved from the tank shapes and the printed counts alone. Each tank is reduced to the distinct arrangements of water it can hold — which is not the same as the number of levels it has, because a tank with no squares in a row fills identically whether the level sits above or below that row. Those arrangements are then combined one tank at a time, abandoning any partial answer where a row or column has already overflowed its count or can no longer reach it even if every remaining tank filled to the brim. The search stops at the second answer, and a grid with a second answer is thrown away. The check under the puzzle repeats that solve from the printed page and compares it square by square.

Randomness and fairness

The tank walls and the amount of water in each tank come from your browser's cryptographic random source unless you give a seed — a seeded puzzle is deterministic, not cryptographic.

For how randomness is produced across the whole site, see how Generate Random works.

Limitations and good to know

  • Ten squares a side is the ceiling, and it is set by how long it takes to prove that only one set of water levels fits — not by taste.
  • Difficulty is not graded. Whether the levels fall out of the totals quickly or only after several tanks are settled is not something this measures.
  • Tanks are cut at random, so their shapes are irregular rather than the tidy rectangles some published puzzles use.
  • A count of zero simply means that row or column stays dry.

Privacy and your data

The grid is cut, filled and checked entirely in your browser. Nothing you type as a seed, and no puzzle made from it, leaves the device.