[SWEA] 1209. [S/W 문제해결 기본] 2일차 - Sum - Python

SWEA '1209. [S/W 문제해결 기본] 2일차' 문제 풀이를 정리했습니다.

2024-09-23조회수 -
PythonAlgorithm

풀이

배열을 순회하면서 각 값들의 합을 구하고 최댓값을 구한다. 100*100 배열에서 우측 상단에서 시작하는 대각선은 행의 인덱스 + 열의 인덱스 == 99, 좌측 상단에서 시작하는 대각선은 행의 인덱스 == 열의 인덱스 임을 확인하여 값을 찾아 더한다. 이외에 각 행과 열의 합들은 배열을 순회하며 더한다.

코드

# 1209
# [S/W 문제해결 기본] 2일차 - Sum
 
for test_case in range(1,11):
    tc = int(input())
    arr = []
    for _ in range(100):
        arr.append(list(map(int, input().split())))
    hor, ver, diagr, diagl, k = 0, 0, 0, 0, 0
    for i in range(100):
        vertemp = 0
        if hor < sum(arr[i]):
            hor = sum(arr[i])
        for j in range(100):
            vertemp += arr[j][i]
            if i == j:
                diagr += arr[i][j]
            if i + j == 99:
                diagl += arr[i][j]
        if ver < vertemp:
            ver = vertemp
    result = max([hor, ver, diagr, diagl])
    print(f"#{tc} {result}")

출처: SWEA https://swexpertacademy.com/main/main.do

Comments

© 2026. Kwon In. All rights reserved.