-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathcreate_mg.py
33 lines (30 loc) · 860 Bytes
/
create_mg.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
def creating_mg(n):
mg = [[0 for j in range(n)] for i in range(n)]
cursor = [0, int((n-1)/2)]
for k in range(n**2):
mg[cursor[0]][cursor[1]] = k+1
if (mg[ (cursor[0]-1) % n ][ (cursor[1]+1) % n ] == 0):
cursor[0] = (cursor[0]-1) % n
cursor[1] = (cursor[1]+1) % n
else:
cursor[0] = (cursor[0]+1) % n
return mg
if __name__ == "__main__":
mg = creating_mg(5)
for l in mg:
print( l )
# if __name__ == "__main__":
# size = 3
# mg = creating_mg(size)
# s = (size**2)*((size**2)+1)/2/size
# for l in mg:
# if not sum(l) == s:
# raise("fuck")
# for l in mg:
# print(l)
# mg2 = list(map(list, zip(*mg)))
# for l in mg2:
# print(l)
# for l in mg2:
# if not sum(l) == s:
# raise("fuck")