사탕 줍기 대회
시간 제한1초메모리 제한256 MB
M행 N열 격자에서 위아래나 좌우로 맞닿지 않도록 상자를 골라 얻을 수 있는 사탕 개수의 최댓값을 구한다.
문제
상근이는 사탕을 무척 좋아하는 아이다. 상근이는 캔디 매거진의 열렬한 구독자이며, 올해 열리는 국제 사탕 줍기 대회에 한국 대표로 참가하게 되었다.
이 대회는 사탕이 든 박스가 행 열로 놓인 곳에서 진행된다. 따라서 박스는 모두 개 있고, 각 박스의 겉면에는 그 안에 든 사탕의 개수가 적혀 있다.
참가자는 박스를 하나 고르고, 그 박스에 든 사탕을 모두 가져간다. 어떤 박스를 고르면 다음 위치에 있는 박스의 사탕이 모두 사라진다.
- 고른 박스의 바로 윗행에 있는 모든 박스
- 고른 박스의 바로 아랫행에 있는 모든 박스
- 같은 행에서 고른 박스의 바로 왼쪽에 있는 박스와 바로 오른쪽에 있는 박스
참가자는 사탕이 남아 있는 박스가 하나도 없을 때까지 계속해서 박스를 고를 수 있다.
과 , 그리고 각 박스에 든 사탕의 개수가 주어졌을 때, 상근이가 가져갈 수 있는 사탕의 최대 개수를 구하는 프로그램을 작성하시오.
입력
입력은 여러 개의 테스트 케이스로 이루어진다. 각 테스트 케이스의 첫째 줄에는 두 정수 과 이 주어진다 (). 이어지는 개 줄에는 각 줄마다 그 행에 놓인 박스 개에 든 사탕의 개수가 공백으로 구분되어 주어진다. 각 박스에 든 사탕의 개수는 이상 이하이다.
입력의 마지막 줄에는 이 두 개 주어지며, 이 줄은 처리하지 않는다.
출력
각 테스트 케이스마다 상근이가 가져갈 수 있는 사탕의 최대 개수를 한 줄에 하나씩 출력한다.