@GeePawHill or go even smaller, a 2x2 with 3-ominos and walk the algorithm by hand.
@GeePawHill or go even smaller, a 2x2 with 3-ominos and walk the algorithm by hand.
How important is gerrymandering? Very very important.
Spoze your state has 5 congressfolk. Spoze there are 16 million orange voters and 9 million purple voters. You might expect to return 3 orange & 2 purple congressfolk.
But if the districts are drawn carefully, gerrymandering can return *1* orange and *4* purple congressfolk.
And, so you're clear on this, it can go the other way, too. With careful drawing of the map, you can return *5* orange and *0* purple congressfolk. That's *also* gerrymandering.
Inching towards the geekery part here.
I wanted to make a puzzle game based on these ideas, hoping to educate folks about how it works, as well as give them fun puzzles to solve.
I'd give, let's take our 5x5 16-orange 9-purple all laid out on a grid, and challenge you to draw the districts, one for the 1-4, and one for the 5-0.
That was in 2020, and I totally lost that thread, tho I had fun working on it. You know how side projects are.
Having a known puzzle and presenting it to the user, child's play, right? Any of us who has UI chops could roll that.
But I didn't want to *curate* these puzzles. I wanted to *generate* them.
User specifies grid. App decides on the orange-purple ratio, and lays out which squares are which. User solves it.
Sit back and wait for the stock options to mature, innit.
But wait. You can't just randomly distribute 16-9 into a 5x5 grid. That may or may not be gerrymanderable to create 5-0 or 1-4 voting.
The generated puzzle *must* be solvable.
How the *fuck* are we gonna be sure of that?
After miles of pacing around out on the deck, hundreds of cigarettes, and a certain amount of substance abuse, I figured it out:
If I could tile the grid with polyominos -- districts -- they would be a solution to the puzzle, cuz I could, for each polyomino, put the correct ratio of orange to purple to achieve the desired outcome.
It wouldn't be the *only* possible solution, but it would be one *guaranteed* solution.