Kakurasu
Shade cells so that every row and column hits its target. A shaded cell is worth its position: column j scores j into its row, row i scores i into its column. Click to shade, click again to mark a cross, once more to clear.
Every line of this puzzle is one constraint: which subset of the
weights 1..n sums to the target? That gives the solver two sound
rule sets. The interval rules are what a person does —
a weight larger than what the line still owes is a cross, a weight the
rest of the line cannot cover is a fill. The
enumeration rule is what a machine does — list every
subset that still works and keep only what all witnesses agree on. Both
are implemented here, and the Hint button names whichever
fires first, intervals before enumeration.
Measured over 200 generated boards per size: at 4×4 the interval rules
finish 99% of boards by themselves; at 8×8 they finish
12.5%, and even full line-by-line enumeration finishes
only 43.5% — the rest fall to a search that averages a
dozen branch nodes. The size dial is the difficulty dial,
because the subset sums of 1..n get denser as n grows and dense sums
mean fewer forced cells. Every generated board is rerolled until the
solver proves its solution unique.