알고리즘/삼성 SW expert Academy

[SWEA] 2001. 파리 퇴치_JAVA

뇌장하드 2022. 5. 6. 10:49

https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5PzOCKAigDFAUq 

 

SW Expert Academy

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

swexpertacademy.com

 

 

 

 

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
 
public class Solution {
    static int  n, m;
    static int[][] area;
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int T = Integer.parseInt(br.readLine());
        for(int tc=1; tc<=T; tc++) {
            StringTokenizer st = new StringTokenizer(br.readLine()," ");
            n = Integer.parseInt(st.nextToken());
            m = Integer.parseInt(st.nextToken());
            area = new int[n][n];
            for(int i=0; i<n; i++) {
                st = new StringTokenizer(br.readLine()," ");
                for(int j=0; j<n; j++) {
                    area[i][j] = Integer.parseInt(st.nextToken());
                }
            }
            int sum = 0;
          
            for(int i=0; i<=n-m; i++) {
                for(int j=0; j<=n-m; j++) {
                    sum=Math.max(sum,cal(i,j));
                }
            }
            System.out.println("#"+tc+" "+sum);
        }
    }
     
    static int cal(int x, int y) {
        int tmp = 0;
        for(int i=x; i<x+m; i++) {
            for(int j=y; j<y+m; j++) {
                tmp += area[i][j];
            }
        }
        return tmp;
    }
 
}