만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

두부 장수 장홍준

시간 제한2초메모리 제한128 MB

요약
글자 등급이 적힌 격자를 겹치지 않는 2x1 도미노로 덮어 등급 조합 가격의 합을 최대화하는 문제이며, 덮이지 않은 칸은 가치가 0입니다.
난이도

어려움10점 중 8점

유형
그래프, 최단 경로, 행렬, 동적 계획법
정답자
아직 제출이 없습니다

문제

장홍준은 세로 N, 가로 M 크기의 두부판을 2 x 1 크기의 조각으로 잘라 판다. 각 칸에는 A, B, C, D, F 중 하나의 등급이 적혀 있으며, 두 칸을 붙여 만든 한 조각의 가격은 두 등급의 조합으로 정해진다.

가격표는 다음과 같다.

ABCDF
A108751
B86431
C74321
D53221
F11110

두 등급의 순서는 가격에 영향을 주지 않는다. 두부판에서 겹치지 않는 2 x 1 조각을 가로 또는 세로로 잘라낼 수 있고, 조각에 포함되지 않는 한 칸짜리 두부는 가격이 0이므로 버린다. 전체 가격 합의 최댓값을 구하시오.

입력

첫째 줄에 두부판의 세로 크기 N과 가로 크기 M이 주어진다. N과 M은 1 이상 14 이하의 정수이다.

다음 N개의 줄에는 각 줄마다 M개의 문자가 주어진다. 각 문자는 해당 칸의 등급을 나타내며 A, B, C, D, F 중 하나이다.

출력

잘라낸 두부 조각들의 가격 합으로 만들 수 있는 최댓값을 출력한다.

예제1

  1. 예제 1

    입력
    4 4
    ACFC
    FDAB
    BACF
    DBAC
    
    예상 출력
    37