파이썬 알고리즘

[파이썬] SWEA 13702 델타검색

뜻 지, 깨달음 오 2022. 10. 1. 14:31

https://swexpertacademy.com/main/code/userProblem/userProblemDetail.do?contestProbId=AX73EWcKxLYDFARO 

 

SW Expert Academy

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

swexpertacademy.com

다이렉트 배열을 쓰는 대표유형 중 하나이다.

전체 sum을 구하는거니까 sum이라는 새로운 변수를 for문 바깥에 둬야한다.

 

전체풀이)

T = 10
for tc in range(1, T+1):
    n = int(input())
    a = [list(map(int, input().split())) for _ in range(n)]
    directy=[-1,1,0,0]
    directx=[0,0,-1,1]
    sum =0
 
    for y in range(n):
        for x in range(n):
            for i in range(4):
                dy=directy[i]+y
                dx=directx[i]+x
                if dy<0 or dy>n-1 or dx<0 or dx>n-1: continue
                sum+= abs(a[dy][dx]-a[y][x])
 
 
    print(f'#{tc} {sum}')