Python Almost Magic Square
def almost_magic_square(a: list[int]) -> list[int]:
grid = [a[i:i + 3] for i in range(0, 9, 3)]
row_sum = [0, 0, 0]
col_sum = [0, 0, 0]
for i in range(3):
for j in range(3):
row_sum[i] += grid[i][j]
col_sum[i] += grid[j][i]
max_sum = 0
for k in range(3):
max_sum = max(max_sum, row_sum[k])
max_sum = max(max_sum, col_sum[k])
i = j = 0
while i < 3 and j < 3:
diff = min(max_sum - row_sum[i], max_sum - col_sum[j])
grid[i][j] += diff
row_sum[i] += diff
col_sum[j] += diff
if row_sum[i] == max_sum:
i += 1
if col_sum[j] == max_sum:
j += 1
return [v for row in grid for v in row]
This adjusts the matrix toward a matching target sum so the rows and columns line up more like a magic square.