Declaration
public SkyscraperUniquenessConstraint(
int clue,
IEnumerable<int> affectedCells,
int minValue = 1,
int maxValue = 9
)Summary
Describes a “skyscraper” constraint: the numbers in the grid represent the height of a skyscraper; taller
skyscrapers obscure the view of smaller ones behind them; and the clue specifies how many skyscrapers are visible
from the direction of the clue. This constraint implies a uniqueness constraint.
Parameters
| int | clue |
The number of skyscrapers visible. |
| IEnumerable<int> | affectedCells |
The set of cells affected by this constraint. This is usually a row or column in a grid, but it can be any subset
of grid points. |
| int | minValue |
The minimum value of numbers in the grid for this puzzle. |
| int | maxValue |
The maximum value of numbers in the grid for this puzzle. |
Remarks
Warning: This constraint is very memory-intensive. It is implemented as a
CombinationsConstraint
with all of the possible number combinations for the specified set of cells. Avoid using this on oversized
puzzles. (At time of writing, this is only feasible for up to 11 cells, which uses about 2 GB of RAM for each
constraint.)