알고리즘/SWEA

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

번잔중 2022. 8. 21. 20:17
 

SW Expert Academy

SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!

swexpertacademy.com

for t in range(1, 11):
    n = int(input())
    data = [list(map(int, input().split())) for _ in range(100)]
    d_sum = []
    # 행
    for i in range(100):
        tmp = 0
        for j in range(100):
            tmp += data[i][j]
        d_sum.append(tmp)

    # 열
    for i in range(100):
        tmp = 0
        for j in range(100):
            tmp += data[j][i]
        d_sum.append(tmp)

    tmp = 0
    # 좌 -> 우 대각선
    for i in range(100):
        tmp += data[i][i]
    d_sum.append(tmp)

    tmp = 0
    # 우 -> 좌 대각선
    for i in range(100):
        tmp += data[i][99 - i]
    d_sum.append(tmp)

    print("#{} {}".format(t, max(d_sum)))

- 행, 열, 대각선 좌우 방향의 케이스로 나눠서 합을 전부 수집한 뒤에 가장 큰 값을 출력하면 됩니다.

- 대각선의 규칙을 파악하면 쉬운 문제였습니다.

 

피드백은 언제나 환영합니다.