Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- readFile = open('20by20.txt','r').readlines()
- z=[]
- for i in range(len(readFile)):
- lst=[]
- for q in readFile[i]:
- if q.isnumeric()==False:
- continue
- if q.isnumeric()==True:
- lst.append(q)
- z.append(lst)
- q=0
- Matrix=[]
- for j in range(len(z)):
- lst=[]
- while q<40:
- if q%2==0:
- lst.append(int(str(z[j][q])+str(z[j][q+1])))
- q+=1
- if q%2!=0:
- q+=1
- Matrix.append(lst)
- q=0
- def checkMax():
- maximum=0
- for i in range(20):
- for j in range(17):
- if checkSide(i,j) > maximum:
- maximum = checkSide(i,j)
- for i in range(17):
- for j in range(17):
- if checkDown(i,j) > maximum:
- maximum = checkDown(i,j)
- for i in range(17):
- for j in range(17):
- if checkDiag(i,j) > maximum:
- maximum = checkDiag(i,j)
- for i in range(17):
- for j in range(17):
- if checkOtherDiag(i,j) > maximum:
- maximum = checkOtherDiag(i,j)
- print(maximum)
- def checkDown(i,j):
- product = 1
- for x in range(4):
- product*=int(Matrix[i+x][j])
- return product
- def checkSide(i,j):
- product = 1
- for x in range(4):
- product*=int(Matrix[i][j+x])
- return product
- def checkDiag(i,j):
- product = 1
- for x in range(4):
- product*=int(Matrix[i+x][j+x])
- return product
- def checkOtherDiag(i,j):
- product = 1
- for x in range(4):
- product*=int(Matrix[i+x][j-x])
- return product
- checkMax()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement