문제 J: 2차원 배열 내의 최대 윈도우 합

문제 J: 2차원 배열 내의 최대 윈도우 합

실행시간 제한: 1 Sec  메모리사용 제한: 128 MB
제출: 132  통과: 23
[제출] [채점기록] [묻고답하기] [만든사람:]

문제 설명

동건이가 자취하고 있는 건물의 주인은 숫자를 참 좋아한다.
슬라이딩이 가능한 형태의 창문에 숫자들이 가득하게 붙어있다.
동건이는 집에 있다 가끔 심심해 질 때에는 창틀을 슬라이딩 하며 놀곤 한다.
가끔 이 창틀 안에 있는 값들의 합이 얼마일지 궁금할 때가 있는데, 
항상 궁금증에만 머물고 귀찮음에 계산은 하지 않는다.


귀찮음이 많은 동건이를 위해, 
주어진 2차원 정수 배열과 정사각형으로 이루어진 윈도우의 한 변의 크기가 주어질 때, 
윈도우를 배열의 왼쪽 상단에서 오른쪽 하단으로 이동시키면서 윈도우 내의 모든 값의 합 중 최대값을 알려주는 프로그램을 만들어주자

입력 설명

테스트케이스 t가 입력된다 (int 범위의 자연수)
2차원 정수 배열의 크기 w, h를 입력받는다. (int 범위 300이하의 자연수)
이후 w, h 만큼 2차원 배열을 입력받는다. (short 범위의 정수)


이후 정사각형의 윈도우의 한 변의 크기 s를 입력받습니다. (2인 경우 2*2 크기의 윈도우를 의미함) (s는 100이하의 정수)
입출력 예제 참고

출력 설명

주어진 2차원 배열에서 윈도우를 이동시키면서 각 윈도우의 합 중 최대값들을 출력한다.


입출력 예제 참고

입력 예시 Copy

1
3 3
1 3 -1
2 4 7
0 5 -2
2

출력 예시 Copy

14