🧩 Play Sudoku on Funnyzz

Heyawake shares DNA with Sudoku β€” both are Japanese logic puzzles requiring unique placement in regions. Sharpen your logical reasoning with our Sudoku game while you learn Heyawake!

Play Sudoku Now β†’

Heyawake Room Puzzle: Complete Guide to Japan's Divided-Rooms Logic Game

Master the shading logic puzzle where rooms, numbers, and connectivity create elegant deduction chains.

1. What Is Heyawake?

Heyawake (へやわけ, literally "divided rooms") is a binary-determination shading logic puzzle first published by the Japanese puzzle company Nikoli in 1992. It belongs to Nikoli's family of shading puzzles alongside Nurikabe, Hitori, and Kakuro.

The puzzle is played on a rectangular grid that has been partitioned into rectangular rooms (also called regions or blocks). Some rooms contain a number telling you exactly how many cells in that room must be shaded black. Your objective is to decide, for every cell, whether it is shaded (black) or unshaded (white) while satisfying all four rules simultaneously.

Heyawake's unique appeal lies in the tension between local room constraints (the number clue) and global connectivity rules (white cells must connect, and white lines cannot cross three rooms). This interplay creates elegant deduction chains that are satisfying to unravel.

<div class="tip-box">
  <strong>πŸ’‘ Why "Heyewake" vs "Heyawake"?</strong><br>
  The Japanese へやわけ romanizes as "heyawake," but you may encounter variant spellings like "heyewake" or even "heya-wake." All refer to the same puzzle. The key is recognizing it means "divided rooms" β€” the central concept of the puzzle.
</div>

2. The Four Rules of Heyawake

Every Heyawake puzzle, regardless of grid size or difficulty, follows exactly four rules. Master these and you can solve any puzzle.

<div class="rule-box">
  <strong>Rule 1 β€” Room Count:</strong> If a room contains a number N, exactly N cells in that room must be shaded black. Rooms without a number may contain any number of shaded cells (including zero).
</div>

<div class="rule-box">
  <strong>Rule 2 β€” No Adjacent Shading:</strong> No two shaded (black) cells may be orthogonally adjacent (sharing a horizontal or vertical edge). Diagonal adjacency is allowed.
</div>

<div class="rule-box">
  <strong>Rule 3 β€” Connected White Cells:</strong> All unshaded (white) cells must form a single orthogonally connected group. You should be able to travel from any white cell to any other white cell through horizontal and vertical steps without crossing a black cell.
</div>

<div class="rule-box">
  <strong>Rule 4 β€” Three-Room Rule:</strong> A contiguous horizontal or vertical line of white cells may not pass through three or more room boundaries. Equivalently, a straight run of white cells can span at most two rooms.
</div>

<p>These four rules interact in subtle ways. Rule 1 is local (within a room), but Rules 2–4 create global constraints that span the entire grid. The art of solving Heyawake lies in propagating local deductions into global conclusions.</p>

3. Anatomy of a Heyawake Grid

Understanding the structure of a Heyawake grid is essential before applying solving techniques. Let's dissect a sample grid:

<svg viewBox="0 0 500 400" role="img" aria-label="Heyawake grid anatomy diagram showing rooms, clues, and cell states" title="Heyawake Grid Anatomy">

  <text x="250" y="25" text-anchor="middle" fill="#4fc3f7" font-size="16" font-weight="bold">Anatomy of a Heyawake Grid</text>

  <rect x="50" y="50" width="400" height="300" fill="#1a2030" stroke="#2a3545" stroke-width="1"></rect>

  <rect x="50" y="50" width="150" height="100" fill="none" stroke="#4fc3f7" stroke-width="3"></rect>
  <rect x="200" y="50" width="250" height="100" fill="none" stroke="#4fc3f7" stroke-width="3"></rect>

  <rect x="50" y="150" width="100" height="100" fill="none" stroke="#4fc3f7" stroke-width="3"></rect>
  <rect x="150" y="150" width="150" height="100" fill="none" stroke="#4fc3f7" stroke-width="3"></rect>
  <rect x="300" y="150" width="150" height="100" fill="none" stroke="#4fc3f7" stroke-width="3"></rect>

  <rect x="50" y="250" width="200" height="100" fill="none" stroke="#4fc3f7" stroke-width="3"></rect>
  <rect x="250" y="250" width="200" height="100" fill="none" stroke="#4fc3f7" stroke-width="3"></rect>

  <g stroke="#2a3545" stroke-width="0.5">

    <line x1="100" y1="50" x2="100" y2="350"></line>
    <line x1="150" y1="50" x2="150" y2="350"></line>
    <line x1="200" y1="50" x2="200" y2="350"></line>
    <line x1="250" y1="50" x2="250" y2="350"></line>
    <line x1="300" y1="50" x2="300" y2="350"></line>
    <line x1="350" y1="50" x2="350" y2="350"></line>
    <line x1="400" y1="50" x2="400" y2="350"></line>

    <line x1="50" y1="100" x2="450" y2="100"></line>
    <line x1="50" y1="150" x2="450" y2="150"></line>
    <line x1="50" y1="200" x2="450" y2="200"></line>
    <line x1="50" y1="250" x2="450" y2="250"></line>
    <line x1="50" y1="300" x2="450" y2="300"></line>
  </g>

  <text x="125" y="110" text-anchor="middle" fill="#ffb74d" font-size="20" font-weight="bold">2</text>
  <text x="325" y="110" text-anchor="middle" fill="#ffb74d" font-size="20" font-weight="bold">1</text>
  <text x="100" y="210" text-anchor="middle" fill="#ffb74d" font-size="20" font-weight="bold">0</text>
  <text x="225" y="210" text-anchor="middle" fill="#ffb74d" font-size="20" font-weight="bold">1</text>
  <text x="375" y="210" text-anchor="middle" fill="#ffb74d" font-size="20" font-weight="bold">2</text>
  <text x="150" y="310" text-anchor="middle" fill="#ffb74d" font-size="20" font-weight="bold">1</text>
  <text x="350" y="310" text-anchor="middle" fill="#ffb74d" font-size="20" font-weight="bold">2</text>

  <rect x="50" y="365" width="20" height="20" fill="#1a2030" stroke="#4fc3f7" stroke-width="2"></rect>
  <text x="80" y="380" fill="#e8e8e8" font-size="12">Room boundary</text>
  <rect x="200" y="365" width="20" height="20" fill="#333" stroke="#2a3545" stroke-width="1"></rect>
  <text x="230" y="380" fill="#e8e8e8" font-size="12">Black (shaded) cell</text>
  <rect x="360" y="365" width="20" height="20" fill="#fff" stroke="#2a3545" stroke-width="1"></rect>
  <text x="390" y="380" fill="#e8e8e8" font-size="12">White cell</text>
</svg>

<p>Key elements of a Heyawake grid:</p>
<ul>
  <li><strong>Rooms (regions):</strong> Rectangular areas defined by thick borders. Each room may or may not contain a clue number.</li>
  <li><strong>Clue numbers:</strong> Orange numbers inside rooms telling you how many cells to shade in that room. A room labeled "0" means no cells in it are shaded; a room with no number means any count is valid.</li>
  <li><strong>Cell states:</strong> Each cell is either black (shaded) or white (unshaded). During solving, you may also mark cells as "definitely white" or "definitely black" as intermediate deductions.</li>
</ul>

<table>
  <thead><tr><th>Grid Size</th><th>Rooms (typical)</th><th>Difficulty</th><th>Typical Solve Time</th></tr></thead>
  <tbody>
    <tr><td>5Γ—5</td><td>4–6</td><td>Beginner</td><td>1–3 minutes</td></tr>
    <tr><td>7Γ—7</td><td>6–10</td><td>Easy–Medium</td><td>3–8 minutes</td></tr>
    <tr><td>10Γ—10</td><td>10–16</td><td>Medium–Hard</td><td>8–20 minutes</td></tr>
    <tr><td>14Γ—14</td><td>16–25</td><td>Expert</td><td>20–45 minutes</td></tr>
    <tr><td>15Γ—15+</td><td>25+</td><td>Master</td><td>45+ minutes</td></tr>
  </tbody>
</table>

4. Six Solving Techniques

These techniques progress from beginner to advanced. Master the first three to solve easy puzzles; all six are needed for hard grids.

<h3>Technique 1: Start with Zero Rooms</h3>
<p>A room labeled "0" contains no shaded cells β€” every cell in it is white. Mark the entire room as white immediately. This is the single easiest deduction and gives you a safe starting anchor.</p>
<div class="tip-box">
  <strong>πŸ’‘ Pro Tip:</strong> Zero rooms are connectivity anchors. Since all their cells are white, they guarantee a white corridor that other deductions can build upon. Always scan for zero rooms first.
</div>

<h3>Technique 2: Full Room Deduction</h3>
<p>If a room's number equals the maximum non-adjacent cells that can fit (roughly half the room's area), the exact pattern is often forced. For example:</p>
<ul>
  <li>A 2Γ—1 room labeled "1" β€” the shaded cell can be in either position, but neighboring constraints often force one.</li>
  <li>A 1Γ—3 room labeled "1" β€” the shaded cell must be in the middle (otherwise black cells in adjacent rooms might touch).</li>
  <li>A 3Γ—3 room labeled "4" β€” forces a specific checkerboard-like pattern.</li>
</ul>

<h3>Technique 3: No-Adjacency Propagation</h3>
<p>Once you shade a cell, all four of its orthogonal neighbors must be white. This triggers cascading deductions: if forcing a neighbor to be white would violate a room count or connectivity, the original shading is impossible.</p>

<svg viewBox="0 0 500 250" role="img" aria-label="Diagram showing no-adjacency propagation in Heyawake" title="No-Adjacency Propagation Diagram">
  <text x="250" y="20" text-anchor="middle" fill="#4fc3f7" font-size="14" font-weight="bold">No-Adjacency Propagation</text>

  <text x="100" y="45" text-anchor="middle" fill="#8899aa" font-size="12">Step 1: Shade cell</text>
  <g transform="translate(40, 55)">
    <rect x="0" y="0" width="120" height="120" fill="#1a2030" stroke="#2a3545" stroke-width="1"></rect>
    <g stroke="#2a3545" stroke-width="0.5">
      <line x1="40" y1="0" x2="40" y2="120"></line>
      <line x1="80" y1="0" x2="80" y2="120"></line>
      <line x1="0" y1="40" x2="120" y2="40"></line>
      <line x1="0" y1="80" x2="120" y2="80"></line>
    </g>

    <rect x="40" y="40" width="40" height="40" fill="#333" stroke="#4fc3f7" stroke-width="2"></rect>
    <text x="60" y="65" text-anchor="middle" fill="#fff" font-size="10">B</text>

    <rect x="40" y="0" width="40" height="40" fill="rgba(255,255,255,0.3)" stroke="#81c784" stroke-width="1"></rect>
    <text x="60" y="25" text-anchor="middle" fill="#81c784" font-size="9">W</text>
    <rect x="40" y="80" width="40" height="40" fill="rgba(255,255,255,0.3)" stroke="#81c784" stroke-width="1"></rect>
    <text x="60" y="105" text-anchor="middle" fill="#81c784" font-size="9">W</text>
    <rect x="0" y="40" width="40" height="40" fill="rgba(255,255,255,0.3)" stroke="#81c784" stroke-width="1"></rect>
    <text x="20" y="65" text-anchor="middle" fill="#81c784" font-size="9">W</text>
    <rect x="80" y="40" width="40" height="40" fill="rgba(255,255,255,0.3)" stroke="#81c784" stroke-width="1"></rect>
    <text x="100" y="65" text-anchor="middle" fill="#81c784" font-size="9">W</text>
  </g>

  <text x="250" y="115" text-anchor="middle" fill="#ffb74d" font-size="24">β†’</text>

  <text x="390" y="45" text-anchor="middle" fill="#8899aa" font-size="12">Step 2: Room count forces next</text>
  <g transform="translate(330, 55)">
    <rect x="0" y="0" width="120" height="120" fill="#1a2030" stroke="#2a3545" stroke-width="1"></rect>
    <g stroke="#2a3545" stroke-width="0.5">
      <line x1="40" y1="0" x2="40" y2="120"></line>
      <line x1="80" y1="0" x2="80" y2="120"></line>
      <line x1="0" y1="40" x2="120" y2="40"></line>
      <line x1="0" y1="80" x2="120" y2="80"></line>
    </g>

    <rect x="40" y="40" width="40" height="40" fill="#333" stroke="#4fc3f7" stroke-width="2"></rect>
    <text x="60" y="65" text-anchor="middle" fill="#fff" font-size="10">B</text>

    <rect x="40" y="0" width="40" height="40" fill="rgba(255,255,255,0.3)"></rect>
    <rect x="40" y="80" width="40" height="40" fill="rgba(255,255,255,0.3)"></rect>
    <rect x="0" y="40" width="40" height="40" fill="rgba(255,255,255,0.3)"></rect>
    <rect x="80" y="40" width="40" height="40" fill="rgba(255,255,255,0.3)"></rect>

    <rect x="0" y="0" width="40" height="40" fill="#555" stroke="#ffb74d" stroke-width="2"></rect>
    <text x="20" y="25" text-anchor="middle" fill="#ffb74d" font-size="9">B?</text>
    <rect x="80" y="0" width="40" height="40" fill="#555" stroke="#ffb74d" stroke-width="2"></rect>
    <text x="100" y="25" text-anchor="middle" fill="#ffb74d" font-size="9">B?</text>
  </g>
</svg>

<h3>Technique 4: Three-Room Rule Scanning</h3>
<p>Scan every row and column for long white corridors. If a straight run of white cells would span three rooms, at least one cell on that line must be shaded. This frequently forces cells in the middle room of such a corridor.</p>
<div class="warn-box">
  <strong>⚠️ Common Mistake:</strong> Players often forget that the three-room rule applies to <em>white</em> cells only. Black cells don't count toward room spanning. A black cell "breaks" a white corridor.
</div>

<h3>Technique 5: Connectivity Checking</h3>
<p>Periodically check that white cells remain one connected group. If shading a cell would split the white region into two or more disconnected components, that cell cannot be shaded. Corners and narrow corridors are the most common places where this constraint bites.</p>

<h3>Technique 6: Room-Count Elimination</h3>
<p>For each numbered room, count how many cells are already shaded and how many remain. If the room's quota is met, all remaining cells must be white. If only one cell remains to reach the quota and only one candidate position exists, shade that cell immediately.</p>

<table>
  <thead><tr><th>Technique</th><th>Difficulty</th><th>When to Use</th><th>Key Insight</th></tr></thead>
  <tbody>
    <tr><td>1. Zero Rooms</td><td>Beginner</td><td>Always, first step</td><td>0 = all white</td></tr>
    <tr><td>2. Full Room</td><td>Beginner</td><td>When number β‰ˆ room area/2</td><td>Forced patterns</td></tr>
    <tr><td>3. No-Adjacency</td><td>Easy</td><td>After any shading</td><td>Shade β†’ 4 white neighbors</td></tr>
    <tr><td>4. Three-Room Rule</td><td>Medium</td><td>Long white corridors</td><td>White line ≀ 2 rooms</td></tr>
    <tr><td>5. Connectivity</td><td>Medium–Hard</td><td>Narrow corridors, corners</td><td>White must stay connected</td></tr>
    <tr><td>6. Room-Count</td><td>Easy</td><td>When quota nears completion</td><td>Remaining cells forced</td></tr>
  </tbody>
</table>

5. Step-by-Step Solving Walkthrough

Let's walk through a simplified Heyawake solve to see how the techniques interact in practice. Imagine a 5Γ—5 grid with 4 rooms:

<div class="tip-box">
  <strong>πŸ’‘ Strategy:</strong> Always begin with Technique 1 (zero rooms) and Technique 6 (room-count elimination). These give you the most information with the least effort. Only then move to propagation (Technique 3) and global rules (Techniques 4–5).
</div>

<p><strong>Step 1 β€” Scan for zero rooms.</strong> If Room A is labeled "0", mark all its cells white. This immediately gives you a white anchor for connectivity (Rule 3).</p>
<p><strong>Step 2 β€” Check room counts.</strong> If Room B is labeled "3" and has 6 cells, you need to place 3 non-adjacent black cells in 6 spaces. Enumerate valid placements (typically 2–4 patterns) and see which ones survive cross-room constraints.</p>
<p><strong>Step 3 β€” Propagate no-adjacency.</strong> For each black cell you've confirmed, mark its 4 orthogonal neighbors as white. Check if any white-marked cell now completes or nearly completes another room's quota.</p>
<p><strong>Step 4 β€” Scan for three-room violations.</strong> Look at long rows/columns. If a horizontal run of white cells currently spans two rooms and the third room on that line has no black cells yet, you may need to force a black cell to prevent a three-room white line.</p>
<p><strong>Step 5 β€” Check connectivity.</strong> Trace a path from every white cell. If shading a candidate black cell would isolate any white region, that cell must remain white.</p>
<p><strong>Step 6 β€” Iterate.</strong> Repeat Steps 2–5 until all cells are determined. Well-formed Heyawake puzzles have a unique solution, so every cell will eventually be forced by the constraints.</p>

6. Heyawake vs Other Nikoli Puzzles

Heyawake belongs to Nikoli's family of shading puzzles. Understanding how it relates to similar puzzles helps you choose which to learn next.

<table>
  <thead><tr><th>Feature</th><th>Heyawake</th><th><a href="/guides/nurikabe-island-puzzle-rules/" style="color:var(--accent)">Nurikabe</a></th><th>Hitori</th><th><a href="/guides/kakuro-number-crosswords/" style="color:var(--accent)">Kakuro</a></th></tr></thead>
  <tbody>
    <tr><td>Grid</td><td>Rectangular, divided into rooms</td><td>Rectangular, no rooms</td><td>Rectangular, numbered cells</td><td>Cross-shaped, divided into runs</td></tr>
    <tr><td>Core constraint</td><td>Room count + connectivity</td><td>Island size + connected sea</td><td>No duplicate in row/column</td><td>Sum equals clue</td></tr>
    <tr><td>Unique rule</td><td>Three-room rule</td><td>Sea cannot have 2Γ—2 block</td><td>No adjacent same numbers</td><td>No repeat digit in a run</td></tr>
    <tr><td>Cell states</td><td>Binary (black/white)</td><td>Binary (black/white)</td><td>Binary (keep/shade)</td><td>Digits 1–9</td></tr>
    <tr><td>Difficulty curve</td><td>Gentle β†’ steep</td><td>Moderate β†’ steep</td><td>Gentle β†’ moderate</td><td>Moderate β†’ steep</td></tr>
    <tr><td>Best for</td><td>Room-based spatial logic</td><td>Island/sea topology</td><td>Pattern recognition</td><td>Arithmetic + placement</td></tr>
  </tbody>
</table>

<p>If you enjoyed <a href="/guides/nurikabe-island-puzzle-rules/" class="internal-link">Nurikabe</a>, Heyawake is a natural next step β€” both involve shading cells with connectivity constraints, but Heyawake adds room-based counting and the three-room rule. If you prefer arithmetic, try <a href="/guides/kakuro-number-crosswords/" class="internal-link">Kakuro</a>.</p>

7. Brain Training Benefits

Regular Heyawake practice exercises multiple cognitive faculties simultaneously:

  • Spatial reasoning: Mentally rotating and comparing room shapes and cell patterns.
  • Constraint satisfaction: Holding four simultaneous rules in working memory and checking each candidate against all of them.
  • Cascading deduction: Following chains of "if A then B then C" across the grid β€” the same skill used in Sokoban planning and general logic puzzles.
  • Working memory: Tracking which cells are confirmed, which are candidates, and which are eliminated β€” across multiple interacting constraint systems.
  • Pattern recognition: Recognizing common room configurations and their forced patterns, accelerating solve speed over time.
<div class="tip-box">
  <strong>πŸ’‘ Transfer effect:</strong> Research shows that logic puzzle practice improves performance on unrelated tasks requiring working memory and executive function. Heyawake's unique combination of local (room) and global (connectivity/three-room) constraints may provide broader cognitive transfer than puzzles with only one type of constraint.
</div>

<p>Pair Heyawake with other brain training activities on our site for a well-rounded cognitive workout: <a href="/guides/best-brain-training-games/" class="internal-link">best brain training games</a>, <a href="/guides/brain-games-focus/" class="internal-link">focus and concentration games</a>, or try our <a href="/games/sudoku/">Sudoku</a> for complementary number logic.</p>

8. FAQ

<div class="faq-item">
  <h3>What are the rules of Heyawake?</h3>
  <p>Four rules: (1) Numbered rooms must have exactly that many black cells. (2) No two black cells may share an edge. (3) All white cells must form one connected group. (4) A straight line of white cells cannot pass through three or more rooms.</p>
</div>

<div class="faq-item">
  <h3>What does "Heyawake" mean?</h3>
  <p>Heyawake (へやわけ) is Japanese for "divided rooms" or "room partition." The name directly describes the puzzle's core mechanic: a grid divided into rectangular rooms where you shade cells according to room-based constraints.</p>
</div>

<div class="faq-item">
  <h3>Is Heyawake similar to Nurikabe?</h3>
  <p>Both are Nikoli shading puzzles with connectivity constraints, but they differ significantly. Nurikabe requires the black cells (sea) to be connected and the white cells (islands) to be separated. Heyawake requires white cells to be connected (not black) and adds room-based counting and the three-room rule.</p>
</div>

<div class="faq-item">
  <h3>What's the best grid size for beginners?</h3>
  <p>Start with 5Γ—5 or 6Γ—6 grids with many numbered rooms. These let you practice the basic room-count and no-adjacency techniques without overwhelming global constraints. Move to 8Γ—8 or 10Γ—10 once you're comfortable with the three-room rule.</p>
</div>

<div class="faq-item">
  <h3>What is the three-room rule?</h3>
  <p>The three-room rule (Rule 4) states that a continuous horizontal or vertical line of white cells may span at most two rooms. If a white corridor would cross into a third room, at least one cell on that line must be shaded black. This is Heyawake's most distinctive and strategically important rule.</p>
</div>

<div class="faq-item">
  <h3>Can Heyawake puzzles have multiple solutions?</h3>
  <p>Well-designed Heyawake puzzles should have exactly one unique solution. The best puzzle generators check for uniqueness before publishing. If you find a puzzle with multiple solutions, it's likely poorly constructed.</p>
</div>

<div class="faq-item">
  <h3>How is Heyawake different from Sudoku?</h3>
  <p>Sudoku uses digits 1–9 and requires unique placement in rows, columns, and boxes. Heyawake is binary (black/white) with room counting and connectivity rules. Both develop logical deduction skills, but Heyawake emphasizes spatial reasoning while Sudoku emphasizes number placement. Try our <a href="/games/sudoku/">Sudoku game</a> to experience both.</p>
</div>

Explore More Puzzles on Funnyzz

If you enjoyed Heyawake, check out these related guides and games: