TWO RULE LAYERS
Layer 1 (Latin square): every digit from 1 to N appears exactly once in each row and column. On a 5×5 grid, each row and column contains 1, 2, 3, 4, and 5 in some order.
Layer 2 (visibility): a clue on the edge of a row or column tells you how many buildings are visible from that side. A building is visible if no taller building stands between it and the edge. Building heights increase left-to-right as you scan from the clue's direction.
Solve the Latin square first when you have enough clues, or use the visibility clues to constrain the Latin square — usually both at the same time.
THE TWO EXTREME CLUES
Clue 1 and clue N (the maximum) are the most informative and should be applied immediately.
- Clue 1: only one building is visible. That means the tallest building (height N) must be in the first position (nearest the clue). It immediately blocks everything behind it. The first cell in that row or column is N.
- Clue N: every building is visible. That can only happen if the heights increase monotonically from the clue inward — 1, 2, 3, ... N in that exact order. The entire row or column is determined.
On a real puzzle, clue 1 and clue N between them often determine several cells outright before you touch any other logic.
READING CLUES 2 THROUGH N−1
Intermediate clues don't pin positions exactly, but they do constrain ranges.
Clue 2: two buildings visible. N is definitely NOT in position 1 (otherwise only one building would be visible). N must be in position 2 or later, and position 1 must have a height that is visible but then blocked by N. On a 5×5 grid, position 1 can be 1, 2, 3, or 4 — but never 5.
Higher clues: a clue of k means k buildings are visible. N cannot be in the first k−1 positions (otherwise you'd see fewer). Conversely, N must be within the first k positions (otherwise you'd see more). This bounds where N can land: positions k through N.
The key insight: every clue tells you a range for where N sits in that row or column. Cross-reference the row clue with the column clue to narrow N to a single cell.
CORNER CELLS ARE MOST CONSTRAINED
A corner cell is simultaneously in a row and a column — it must satisfy the clue from the row's direction AND the clue from the column's direction. That double constraint often fixes the corner outright.
Start your solve by examining every corner cell against both its row and column clues. If the row clue says N sits in positions 1–2 and the column clue says N sits in positions 3–5, the corner is definitely not N. Keep narrowing until a digit is forced.
After corners, move to edge cells that share a clue with an already- determined cell. Propagation moves inward naturally.
CASCADE INWARD
Once you fix a digit in any cell, use it in two ways simultaneously:
- Latin square elimination: remove that digit from all other cells in the same row and column.
- Visibility update: recalculate how many buildings are now determined in each row and column that contains the new cell. A partly-resolved row might now match only one remaining arrangement.
The cascade typically accelerates: early forced cells reveal new forced cells faster than you expect. Harder puzzles require holding two or three candidate values in mind before one resolves — but the mechanism is the same.
THE BEGINNER MISTAKE
The most common error is treating Skyscraper as "just a Latin square with hints." Beginners fill the Latin square by elimination first and then use the visibility clues only to break ties. That order discards most of the clues' information.
The clues are primary constraints, not tie-breakers. Use them from the first cell, not the last. The correct mental model: the visibility clue tells you where N must be, and that single placement unlocks most of the rest of the row and column before you even think about digits 2 through N−1.