1209

HoRi·2022년 11월 18일
0

SWEA_PY

목록 보기
31/32

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


다음 100X100의 2차원 배열이 주어질 때, 각 행의 합, 각 열의 합, 각 대각선의 합 중 최댓값을 
구하는 프로그램을 작성하여라. 다음과 같은 5X5 배열에서 최댓값은 29이다.

[제약사항]

총 10개의 테스트 케이스가 주어진다.
배열의 크기는 100X100으로 동일하다.
각 행의 합은 integer 범위를 넘어가지 않는다.
동일한 최댓값이 있을 경우, 하나의 값만 출력한다.

[입력]

각 테스트 케이스의 첫 줄에는 테스트 케이스 번호가 주어지고 그 다음 줄부터는 2차원 배열의 
각 행 값이 주어진다.

[출력]

#부호와 함께 테스트 케이스의 번호를 출력하고, 공백 문자 후 테스트 케이스의 답을 출력한다.

[코드]

T = 10

for tc in range(1, T+1):
    tc_n = int(input())
    arr = [list(map(int, input().split())) for _ in range(100)]
    result =[]
    check = 0
    
    for i in range(100):
        check = sum(arr[i])
        result.append(check)
        
    for j in range(100):
        check = 0
        for k in range(100):
            check += arr[k][j]
        result.append(check)
        
    check = 0
    for m in range(100):
        check += arr[m][m]
    result.append(check)
    
    check = 0
    for n in range(100):
        check += arr[99-n][99-n]
    result.append(check)
    
    print(f'#{tc} {max(result)}')



이 문제의 저작권은 swea에 있습니다. 해당 포스트는 학습/기록용으로 사용되었습니다.

profile
무지성 작성소

0개의 댓글