Более эффективное решение для решения этой головоломки матрицы?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Более эффективное решение для решения этой головоломки матрицы?

Сообщение Anonymous »

Найдите матрицу 3x3, M, чьи строки, столбцы и диагонали составляют до 15. Условие: Вы должны использовать каждое число из 1-9. < /p>

Я не очень умный, поэтому я только что попробовал этот метод грубой силы: < /p>

def solve_999():
for a in range(1, 10):
for b in range(1, 10):
for c in range(1, 10):
for d in range(1, 10):
for e in range(1, 10):
for f in range(1, 10):
for g in range(1, 10):
for h in range(1, 10):
for i in range(1, 10):
if (a+b+c == d+e+f == g+h+i == a+d+g == b+e+h == c+f+i == a+e+i == c+e+g == 15):
if check_unique([a, b, c, d, e, f, g, h, i]):
print(a, b, c)
print(d, e, f)
print(g, h, i)
return

def check_unique(L):
d = {1:0, 2:0, 3:0, 4:0, 5:0, 6:0, 7:0, 8:0, 9:0}
for letter in L:
d[letter] += 1
if d[letter] > 1:
return False
return True
< /code>

работает, но это не очень эффективно. Кто -нибудь может помочь мне найти более эффективное решение?

Подробнее здесь: https://stackoverflow.com/questions/390 ... rix-puzzle
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»