Fill-a-pix is a logic puzzle game similar to Pic-a-Pix (aka Logic art) and Minesweeper. An example starting board is shown below on the left with the completed board shown to its right. Each number in the board indicates how many surrounding cells, including itself, are to be filled in. There are (up to) nine total cells associated with each number: four immediately adjacent (up, down, left, and right), four diagonally adjacent (one touching each corner), and the central cell (where the number is located).
Based on this logic, all 0's and 9's are determinant, as all nine cells are either empty or filled, respectively, for these numbers. Also, all 6's on the board edges and 4's in the corners should be completely filled in, as they only involve 6 or 4 cells, respectively.
This problem deals with basic-logic Fill-a-pix problems; a sample step-by-step solution is found here. These problems are basic in that each clue can be solved independent of all other clues, though some looping or iteration over the board will be required to solve all the clues. Basic logic can be summarized in the following two cases, regarding the cells associated with each clue: (1) if the sum of filled-in cells equals the clue, all other associated cells should be marked as empty, and (2) if the sum of empty cells equals the total number of associated cells minus the clue, all other associated cells should be marked as filled in.
For this problem, you will be presented with a board full of clues. Write a function to solve the Fill-a-pix puzzle based on those clues, returning a solution of the same size as the board filled with 1's (filled) and 0's (empty).
A related problem is Fill-a-pix - Solution Checker.