본문 바로가기

알고리즘/SW Expert Academy

SWEA - 2001. 파리 퇴치(python)

728x90

https://swexpertacademy.com/main/code/problem/problemDetail.do?problemLevel=2&contestProbId=AV5PzOCKAigDFAUq&categoryId=AV5PzOCKAigDFAUq&categoryType=CODE&problemTitle=&orderBy=INQUERY_COUNT&selectCodeLang=PYTHON&select-1=2&pageSize=10&pageIndex=1 

 

SW Expert Academy

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

swexpertacademy.com

문제 접근

  • 이차원 배열을 다룰 수 있는지를 물어보는 문제
  • 입력 값이 적어 간단하게 반복문을 겹쳐서 작성하였다.

작성한 코드

test = int(input())

for t in range(1, test+1):
    g = []
    kills = []
    n, m = map(int, input().split())
    # 그래프에 값 추가
    for _ in range(n):
        numbers = list(map(int, input().split()))
        g.append(numbers)
    #n-m-1까지 반복문
    for x in range(n-m+1):
        for y in range(n-m+1):
            temp = 0
            for i in range(m):
                for  j in range(m):
                    temp += g[x+i][y+j]
            kills.append(temp)
    
    ans = max(kills)
    print(f'#{t}', ans)