SWEA(Python) 풀이/D2

SWEA[D2] (Python) 2001번 파리 퇴치 풀이

개발윗미 2022. 4. 27. 16:12

Python으로 구현한 2001번 파리 퇴치 문제 풀이입니다.

 

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

 

SW Expert Academy

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

swexpertacademy.com


t = int(input())

for tc in range(1, t + 1) :
    n, m = map(int, input().split())
    board = [list(map(int, input().split())) for _ in range(n)]

    result = 0
    for i in range(n-m+1) :
        for j in range(n-m+1) :
            sum_value = 0
            for k in range(m) :
                for l in range(m) :
                    sum_value += board[i+k][j+l]
            if sum_value > result :
                result = sum_value

    print('#%d %d' % (tc, result))

 

1. 각 테스트 케이스마다 N x N 크기의 배열을 입력받는다.

 

2. n-m+1 의 값을 반복문의 범위로 지정하여 M x M 크기의 파리채를 한 칸씩 옮겨 죽인 파리의 개수를 sum_value에 누적한다.

 

3. 만약 sum_value의 값이 result 값보다 클 경우 result 값을 sum_value 값으로 갱신한다.

 

4. 최종적으로 해당 테스트 케이스 번호와 함께 result 값을 출력한다.