포닉스와 달구
시간 제한1.5초메모리 제한1024 MB
Dalgu가 두 모서리 칸을 피해 K×K 정사각형 영역을 골라 막으면, Phoenix가 (1,1)에서 (N,N)까지 얻을 수 있는 최대 합을 구합니다.
문제
포닉스와 달구는 크기의 격자 위에서 놀이를 한다. 격자의 행 열 칸에는 가중치 가 적혀 있다. 놀이 방법은 다음과 같다.
- 달구는 크기의 영역을 하나 골라서, 그 영역의 칸들을 윤이에게 선물한다. 단, 달구가 고른 영역에는 격자의 1행 1열과 행 열이 포함되면 안 된다.
- 포닉스는 처음에 1행 1열에 있고, 행 열에 도달할 때까지 이동한다. 현재 칸이 행 열이면 행 열 또는 행 열로 이동할 수 있다. 단, 격자 밖이나 윤이가 선물받은 칸으로는 이동할 수 없다.
- 포닉스가 얻는 점수는 포닉스가 지나간 칸에 적힌 가중치의 합이다.
포닉스는 점수를 최대로 얻으려 하고, 달구는 점수가 최소가 되도록 영역을 고른다. 두 사람이 모두 최선을 다한다고 할 때, 포닉스가 얻을 수 있는 점수의 최댓값을 구하시오.
입력
첫째 줄에 격자의 크기 과 가 공백으로 구분되어 주어진다. (; )
다음 개의 줄에는 개의 정수 이 공백으로 구분되어 주어진다. ()
출력
포닉스가 얻을 수 있는 점수의 최댓값을 출력한다.