본인풀이 - 현타온다
import sys
sys.stdin=open("input.txt", "r")
N = int(input())
arr = [list(map(int, input().split())) for _ in range(N)]
c =[]
for i in range(len(arr)): #각 행의 합
total = 0
for j in range(len(arr[i])):
total = total + arr[i][j]
c.append(total)
for j in range(len(arr[i])): #각 열의 합
total =0
for i in range(len(arr)):
total = total + arr[i][j]
c.append(total)
i =0 #좌측 대각선의 합
j =0
total =0
while i < N:
total = total +arr[i][j]
i+=1
j+=1
c.append(total)
i =0 #우측 대각선의 합
j =N-1
total =0
while i< N:
total = total + arr[i][j]
i+=1
j-=1
c.append(total)
print(max(c))
강사풀이
import sys
sys.stdin=open("input.txt", "r")
n = int(input())
arr = [list(map(int, input().split())) for _ in range(n)]
largest = -2147000000
for i in range(n):
sum1 = sum2 =0
for j in range(n):
sum1 +=arr[i][j]
sum2 +=arr[j][i]
if sum1>largest:
largest = sum1
if sum2>largest:
largest = sum2
sum1 = sum2 =0
for i in range(n):
sum1+=arr[i][i]
sum2+=arr[i][n-i-1]
if sum1 > largest:
largest = sum1
if sum2 > largest:
largest = sum2
print(largest)
'파이썬 알고리즘 > 파이썬 탐색 & 시물레이션' 카테고리의 다른 글
9. 봉우리 (0) | 2022.11.02 |
---|---|
8. 모래시계 (0) | 2022.11.02 |
7. 사과나무 (0) | 2022.11.02 |
3. 카드역배치 (0) | 2022.11.01 |
1. 회문 문자열 검사 (0) | 2022.11.01 |