Pagini recente » Cod sursa (job #3155349) | Cod sursa (job #2548553) | Cod sursa (job #1321827) | Cod sursa (job #2958980) | Cod sursa (job #2329381)
from functools import reduce
class Flip:
def __init__(self, mat, n, m) -> None:
super().__init__()
self.mat = mat
self.n = n
self.m = m
def sum(self, mat):
return reduce(lambda a, b: a + b, reduce(lambda l1, l2: l1 + l2, mat))
def flip(self, i, j):
if i == n or j == m: return self.sum(self.mat)
for k in range(n):
mat[k][j] = -1 * mat[k][j]
for k in range(m):
mat[i][k] = -1 * mat[i][k]
sol = self.sum(self.mat)
newSol = self.flip(i, j + 1)
sol = newSol if newSol > sol else sol
newSol = self.flip(i + 1, j)
sol = newSol if newSol > sol else sol
return sol
fileIn = open('flip.in', 'r')
fileOut = open('flip.out', 'w')
n, m = [int(num) for num in fileIn.readline().split(' ')]
mat = [[int(num) for num in line.split(' ')] for line in fileIn]
print(Flip(mat, n, m).flip(0, 0))
fileIn.close()
fileOut.close()