Как устранить магические квадраты, образованные одинаковыми числами, но переставленные - PullRequest
1 голос
/ 24 апреля 2019

Магические квадраты, образованные первыми 9 числами:
[[6, 1, 8], [7, 5, 3], [2, 9, 4]]
[[2, 7, 6], [9, 5, 1], [4, 3, 8]] и т. Д. (8 магических квадратов с перестановками)

Я хотел бы исключить перестановки, чтобы это считалосьодин магический квадрат, как это: [[6, 1, 8], [7, 5, 3], [2, 9, 4]]
Очень трудно выполнять операции с данными в памяти, то естьпо результатам обработки.
Я бы хотел поработать с данными в памяти и сделать сравнения на лету

`

from itertools import permutations
x=[1,2,3,4,5,6,7,8,9]
for a in permutations(x,9):
        if a[0]+a[1]+a[2]==15 and a[3]+a[4]+a[5]==15:
         if a[6]+a[7]+a[8]==15 and a[0]+a[3]+a[6]==15:
            if a[1]+a[4]+a[7]==15 and a[2]+a[5]+a[8]==15:
                if a[0]+a[4]+a[8]==15 and a[2]+a[4]+a[6]==15:
                    print(a[0:3])
                    print(a[3:6])
                    print(a[6:])
                    print()

`

`

...