closestNumbrixMatch tries to build a valid Numbrix solution that overlaps with userGrid by preferring the user's chosen positions for each number (without violating the clues in input). Returns the first valid solution found, or false if none exists.
(input, userGrid [boardSize][boardSize]int)
source not stored for this graph (policy: none)