본문 바로가기
알고리즘/SWEA

[swea][파이썬] 1209 .[S/W 문제해결 기본] 2일차 - Sum

by 노베코딩 2022. 8. 22.

단순하게 가로행 전부 구하면서 최대값을 비교하며 변수에 저장하고

마찬가지로 세로행, 우하향 대각선, 좌하향 대각선까지 비교하면서

최대값을 찾았다.

import sys

sys.stdin = open('sum_input.txt')

for test in range(10):

    N = int(input())

    lst = [list(map(int, input().split())) for i in range(100)]

    #최대값을 확인할 변수 생성
    myMax= 0
    tempMax =0

    # 가로값 구하고 최대값과 비교하기 값 100개
    for i in range(100):
        for j in range(100):
            tempMax += lst[i][j]
        if tempMax > myMax:
            myMax = tempMax
        tempMax=0

    #세로값 구하고 최대값과 비교하기  값 100개
    for j in range(100):
        for i in range(100):
            tempMax += lst[i][j]
        if tempMax > myMax:
            myMax = tempMax
        tempMax=0

    #우하향 대각선 구하고 최대값과 비교  값 1개
    for i in range(100):
        tempMax += lst[i][i]

    if tempMax > myMax:
        myMax = tempMax
    tempMax = 0


    #좌상향 대각선 구하고 최대값과 비교  값 1개
    for i in range(100):
        tempMax += lst[99-i][i]

    if tempMax > myMax:
        myMax = tempMax
    tempMax = 0


    print(f'#{N} {myMax}')