🎈 격자판 최대합
55 격자판에 아래롸 같이 숫자가 적혀있습니다.
10 13 10 12 15
12 39 30 23 11
11 25 50 53 15
19 27 29 37 27
19 13 30 13 19
NN의 격자판이 주어지면 각 행의 합, 각 열의 합, 두 대각선의 합 중 가 장 큰 합을 출력합
니다.
▣ 입력설명
첫 줄에 자연수 N이 주어진다.(1<=N<=50)
두 번째 줄부터 N줄에 걸쳐 각 줄에 N개의 자연수가 주어진다. 각 자연수는 100을 넘지 않는
다.
▣ 출력설명
최대합을 출력합니다.
import sys
# sys.stdin = open("input.text", "rt")
N = int(input())
data = [list(map(int, input().split())) for _ in range(N)] #NxN 2차원 리스트
max_data = -2424242424
for x in data:
if max_data < sum(x):
max_data = sum(x)
for i in range(N):
sum_col = 0
for j in range(N):
sum_col += data[j][i]
if sum_col > max_data:
max_data = sum_col
sum_d = 0
sum_d2 = 0
for i in range(N):
sum_d += data[i][i]
sum_d2 +=data[i][N-1-i]
if max_data < sum_d:
max_data = sum_d
if sum_d > max_data:
max_data = sum_d
print(max_data)
🎃 코멘트
파이썬 2차원 리스트 간단하게 입력받기. 그냥 전부 다 돌려보면 됨.