본문 바로가기
Problem Solving/SWEA

[SWEA] 2001. 파리 퇴치

by 테리는당근을좋아해 2020. 1. 29.

문제

위의 그림처럼 M X M 사이즈의 2차원 배열이 입력되었을 때, N X N 사이즈의 부분 배열 원소의 합 중 최대값 출력

 

풀이방법

M의 최대크기가 30 이므로 완전탐색

 

소스코드

package samsung;

import java.util.*;

public class s_2001 {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int test = sc.nextInt();
		for(int t = 1; t <= test; t++) {
			int n = sc.nextInt();
			int m = sc.nextInt();
			int[][] a = new int[n][n];
			for(int i = 0; i < n; i++) {
				for(int j = 0; j < n; j++) {
					a[i][j] = sc.nextInt();
				}
			}
			
			int max = 0;
			
			for(int i = 0; i < n; i++) {
				for(int j = 0; j < n; j++) {
					int sum = 0;
					for(int k = 0; k < m; k++) {
						for(int s = 0; s < m; s++) {
							if(i+k >= n || j + s >= n)
								continue;
							sum += a[i + k][j + s];
						}
					}
					max = Math.max(max, sum);
				}
			}
			System.out.println("#" + t + " " + max);
		}
	}
}

'Problem Solving > SWEA' 카테고리의 다른 글

[SWEA] 1986. 지그재그 숫자  (0) 2020.01.29
[SWEA] 1989. 초심자의 회문 검사  (0) 2020.01.29
[SWEA] 2005. 파스칼의 삼각형  (0) 2020.01.29
[SWEA] 2007. 패턴 마디의 길이  (0) 2020.01.29
[SWEA] 1926. 간단한 369게임  (0) 2020.01.29

댓글