This is the famous 8 queens problem but there are walls on the board. Queens cannot attack each other through walls. Also, in the code with square scores, there are scores associated with each square and each found solution should have a predefined minimum score.
First code is this:
8queens-with-walls.py
This is 8 queens with walls solved with backtracking and forward check.
The second code is:
8queens-with-walls-and-scores.py
This is 8 queens with walls and also each square has a score, found solutions should have a predefined minimum score.