격자 이동 4


답안 제출

Points: 7
시간 제한: 2.0s
메모리 제한: 1G

문제 유형

\(N\)행 \(M\)열의 격자가 있다. 각 칸에는 정수가 하나씩 적혀 있다. 이 중 \((R,C)\)는 이동할 수 없는 칸이다.

왼쪽 위 칸인 \((1,1)\)에서 출발하여 오른쪽 아래 칸인 \((N,M)\)까지 이동하려고 한다. 현재 칸에서 다음 두 방향 중 하나로 이동할 수 있다.

  • 오른쪽: \((r,c)\)에서 \((r,c+1)\)로 이동한다.
  • 아래쪽: \((r,c)\)에서 \((r+1,c)\)로 이동한다.

격자 밖이나 이동할 수 없는 칸으로는 이동할 수 없다. 경로에 포함된 모든 칸의 값을 더했을 때 얻을 수 있는 합의 최댓값을 구하여라. 시작 칸과 도착 칸의 값도 합에 포함한다.

도착 칸까지 이동할 수 없는 입력은 주어지지 않는다.

입력

첫째 줄에 격자의 행의 수 \(N\)과 열의 수 \(M\)이 공백으로 구분되어 주어진다.

다음 \(N\)개의 줄에 걸쳐 격자에 적힌 정수가 주어진다. 이 중 \(i\)번째 줄의 \(j\)번째 정수는 \((i,j)\)에 적힌 값 \(A_{i,j}\)이다.

마지막 줄에 이동할 수 없는 칸의 행 \(R\)과 열 \(C\)가 공백으로 구분되어 주어진다.

출력

가능한 경로에서 얻을 수 있는 합의 최댓값을 출력한다.

제한

  • \(2 \le N,M \le 1,000\)
  • \(-1,000 \le A_{i,j} \le 1,000\)
  • \(1 \le R \le N\)
  • \(1 \le C \le M\)
  • \((R,C)\)는 \((1,1)\) 또는 \((N,M)\)이 아니다.
  • 입력으로 주어지는 값은 모두 정수이다.

예제 입력

3 3
1 2 3
4 5 6
7 8 9
2 1

예제 출력

25

\((2,1)\)로는 이동할 수 없다. \((1,1)\)에서 시작하여 \((1,2)\), \((2,2)\), \((3,2)\), \((3,3)\)의 순서로 이동하면 합은 \(1+2+5+8+9=25\)이다.


코멘트

현재 작성된 코멘트가 없습니다.