  North Carolina's constitution requires that state legislative districts
should not split counties. However, counties must be split to comply with the
"one person, one vote" mandate of the U.S. Supreme Court. Given that counties
must be split, the North Carolina legislature and courts have provided
guidelines that seek to reduce counties split across districts while also
complying with the "one person, one vote" criteria. Under these guidelines, the
counties are separated into clusters. The primary goal of this work is to
develop, present, and publicly release an algorithm to optimally cluster
counties according to the guidelines set by the court in 2015. We use this tool
to investigate the optimality and uniqueness of the enacted clusters under the
2017 redistricting process. We verify that the enacted clusters are optimal,
but find other optimal choices. We emphasize that the tool we provide lists
\textit{all} possible optimal county clusterings. We also explore the stability
of clustering under changing statewide populations and project what the county
clusters may look like in the next redistricting cycle beginning in 2020/2021.
