Функция стоимости - использование функции счетчика для нонетов сетки Судоку - PullRequest
0 голосов
/ 22 ноября 2018

Я сейчас пытаюсь построить функцию стоимости для Судоку.У меня есть следующий код для моего случайного назначения сетки 9x9:

m = np.zeros((9,9)) #9x9 grid of all zeros 
vals = np.arange(1,10) #set of values from 1 to 9 aranged randomly
for i in range(0,9):
m[i,:] = np.random.choice(vals,size=9,replace=False) #randomly choses a set of 9 values for the row
print(m.astype(int)) #prints as integers

Впоследствии я создал оценку для количества повторений в каждом столбце для этой сетки:

m = m
i = 1
for i in range(0,9):  #produces the sum of the columns score values collectively 
print(sum([r - 1 for r in Counter((m[:,i])).values()])) 

ЯИнтересно, есть ли способ получить оценки для каждого нонета?(каждая группировка 3x3 сетки 9x9 Sudoku)

Мне кажется, что мне придется взять подраздел для каждой сетки 3x3, а затем произвести дублирование с использованием функции Counter таким же образом, как указано выше, но я не уверенотносительно того, как это сделать.

...