햄스터
시간 제한2초메모리 제한1024 MB
N행 M열 격자에서 북서쪽 모서리부터 남동쪽 모서리까지 같은 칸을 두 번 지나지 않는 경로의 애벌레 합 최댓값을 구합니다.
문제
햄스터는 직사각형 모양의 우리에서 살고 있습니다. 바닥은 같은 크기의 정사각형 칸으로 나뉘어 격자를 이루고, 각 칸에는 애벌레가 여러 마리 있습니다.
햄스터는 북서쪽 모서리에서 출발합니다. 방문한 칸에서는 애벌레를 그릇에 담고, 그 칸에 덫을 놓은 뒤, 지금 떠나는 칸과 변을 공유하는 옆 칸으로 이동합니다. 이미 방문한 칸으로는 돌아갈 수 없습니다. 자신이 놓은 덫에 걸리기 때문입니다. 여정은 남동쪽 모서리에서 끝납니다.
각 칸의 애벌레 수가 주어질 때, 어떤 덫에도 걸리지 않고 모을 수 있는 애벌레의 최대 개수를 구하세요.
입력
첫 줄에 행의 수 과 열의 수 이 주어집니다 (). 이어서 개의 줄이 주어지며, 각 줄에는 개의 정수가 있고 각 칸의 애벌레 수를 나타냅니다. 한 줄이 격자의 한 행에 해당합니다. 첫 번째 줄의 첫 번째 수가 북서쪽 모서리이고, 마지막 줄의 마지막 수가 남동쪽 모서리입니다.
각 칸의 애벌레 수는 이상 이하입니다.
출력
모을 수 있는 애벌레 수의 최댓값을 한 개의 수로 출력하세요.