드문 사다리로 연결된 선반들 사이를 내려갔다가 다시 올라오며 항아리를 중복 없이 주워 담을 때 얻을 수 있는 사탕 개수의 최댓값을 구한다.
보통7동적 계획법그래프구간구현아직 제출이 없습니다시간 제한2초메모리 제한512 MB왕실 주방에는 사탕 바를 보관하는 거대한 선반 벽이 있다. 길이가 같은 선반 N개가 바닥에서부터 위로 차곡차곡 놓여 있고, 왼쪽 끝과 오른쪽 끝이 모두 가지런히 맞춰져 있다. 선반 하나는 크기가 같은 칸 M개로 나뉜다. 각 칸은 비어 있거나 항아리 하나가 놓여 있고, 항아리 하나에는 사탕 바가 1개 이상 9개 이하로 들어 있다.
모든 선반은 바로 아래 선반과 수직 사다리 한 개 이상으로 이어져 있고, 맨 아래 선반은 같은 방식으로 바닥과 이어져 있다. 사다리는 어떤 칸과 바로 아래 선반의 같은 열에 있는 칸을 잇는다. 맨 아래 선반에 걸린 사다리는 바닥으로 이어진다. 한 칸 바로 아래에 걸린 사다리는 많아야 한 개다.
맨 위 선반에는 항아리가 없고, 그 바로 위에는 옥상으로 통하는 창문이 열려 있다. 도둑은 이 창문으로 들어와 사탕 바를 최대한 많이 들고 나가려 한다. 도둑의 왕복 경로는 이렇다.
한 번 올라가기 시작하면 다시 내려가지 않는다. 선반 위에서는 이웃한 칸으로 왼쪽이나 오른쪽으로 걸어가고, 선반과 선반 사이는 사다리로 오르내린다. 항아리가 있는 칸에 들어가면 그 항아리에 든 사탕 바를 모두 가져간다.
문제는 경보다. 항아리가 있는 칸에는 두 번 들어갈 수 없고, 두 번째로 들어가는 순간 사탕 경보가 울린다. 빈 칸과 맨 위 선반, 바닥은 몇 번이든 지나가도 된다.
경보를 울리지 않고 도둑이 들고 나갈 수 있는 사탕 바의 최대 개수를 구하시오.
첫째 줄에 선반의 수 N과 선반 하나의 칸 수 M이 주어진다.
다음 2N개 줄은 각각 길이가 M인 문자열이고, 선반과 사다리 배치를 위에서부터 차례로 그린다.
-는 빈 칸이고, 숫자 x는 사탕 바 x개가 든 항아리다.|는 사다리이고, .는 빈 벽이다.제한:
경보를 울리지 않고 도둑이 모을 수 있는 사탕 바의 최대 개수를 한 줄에 출력한다.