Can't you just draw the N districts that you want, then break out N new districts from those by extracting a "ring" from each. Then you have N districts each fully surrounded by another district. The only way to merge pairs of adjacent districts is to restore the original layout.
Seems like a pretty trivial way to break the algorithm. But I probably misunderstood something.
Seems like a pretty trivial way to break the algorithm. But I probably misunderstood something.