The row counts below four columns were the naive division, not what the board does

This commit is contained in:
Gmer4Lfe
2026-08-25 17:21:20 -04:00
parent 820e8325a6
commit 128172d3a8
+8 -3
View File
@@ -13,9 +13,14 @@
// Powers of two, all the way down. // Powers of two, all the way down.
// Column counts are 8, 4, 2, 1 and every span is 1, 2, 4 or 8. That pairing is what makes // Column counts are 8, 4, 2, 1 and every span is 1, 2, 4 or 8. That pairing is what makes
// the board tile with no holes at every width without a single hand-placed card: 32 span // the board tile with no holes at every width without a single hand-placed card: 32 span
// units divide into 8 columns as 4 rows, into 4 as 8 rows, into 2 as 16, into 1 as 32. // units divide into 8 columns as 4 rows and into 4 as 8. A rung of 6 or 10 columns does
// A rung of 6 or 10 columns does not divide a span of 4, which is why the previous ladder // not divide a span of 4, which is why the previous ladder needed a per-breakpoint
// needed a per-breakpoint override for every wide card and still left holes. // override for every wide card and still left holes.
//
// Below four columns the arithmetic stops being a division. Spans clamp to the column
// count, so a span-4 card contributes 2 at two columns and 1 at one, and the board is 13
// rows and then 18 rather than the 16 and 32 a naive division predicts. It still tiles
// without holes, for a different reason: a clamped card fills its row outright.
// //
// Breakpoints are arithmetic, not taste. // Breakpoints are arithmetic, not taste.
// A column count is viable exactly when the cards still fit: // A column count is viable exactly when the cards still fit: