만드는 중입니다

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

픽셀

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

요약
N×N 픽셀 격자의 각 픽셀을 흰색 또는 검은색으로 칠해, 색 보너스에서 색이 다른 인접 쌍의 비용을 뺀 값을 최대로 만듭니다.
난이도

보통10점 중 7점

유형
그래프
정답자
아직 제출이 없습니다

문제

NtimesNN \\times N 크기의 픽셀 행렬이 주어진다. 각 픽셀을 검은색 또는 흰색으로 칠해서 최종 결과의 쾌적도가 최대가 되도록 하라. 주어지는 정보는 세 가지다. 픽셀 (i,j)(i, j)를 흰색으로 칠하면 AijA_{ij}의 보너스를 얻고, 검은색으로 칠하면 BijB_{ij}의 보너스를 얻는다. 변을 공유하는 인접 픽셀 쌍의 색이 다르면 CijkC_{ijk}의 비용을 지불한다.

비용은 픽셀마다 네 방향에 대해 주어진다. 픽셀 (i,j)(i, j)에서 Cij0C_{ij0}는 (i−1,j)(i - 1, j) 픽셀과 색이 다를 때의 비용, Cij1C_{ij1}은 (i,j+1)(i, j + 1)과, Cij2C_{ij2}는 (i+1,j)(i + 1, j)와, Cij3C_{ij3}는 (i,j−1)(i, j - 1)과 색이 다를 때의 비용이다. 행렬 밖으로 나가는 방향의 비용도 0으로 주어진다. Cij0C_{ij0}와 C(i−1)j2C_{(i-1)j2}는 항상 같으며, 다른 방향도 같은 대칭 관계다.

흰색 픽셀의 AijA_{ij} 합과 검은색 픽셀의 BijB_{ij} 합을 더하고, 색이 다른 인접 쌍의 비용 합을 뺀 값을 최대화하라. 각 쌍은 한 번만 계산한다.

입력

첫 줄에 NN이 주어진다. 이어서 NN줄에 걸쳐 각 줄마다 NN개의 값이 주어지며, ii번째 줄의 jj번째 값이 AijA_{ij}다. 같은 형식으로 NN줄에 걸쳐 BijB_{ij}가 주어진다. 마지막으로 NtimesNN \\times N줄에 걸쳐 각 줄에 네 개의 값 Cij0C_{ij0}, Cij1C_{ij1}, Cij2C_{ij2}, Cij3C_{ij3}가 주어진다. ((i−1)timesN+j)((i-1) \\times N + j)번째 줄이 픽셀 (i,j)(i, j)의 값이다.

출력

최적 쾌적도의 최댓값을 한 줄에 출력한다.

제한

1leNle1001 \\le N \\le 100

1leAij,Bij,Cijkle1001 \\le A_{ij}, B_{ij}, C_{ijk} \\le 100

힌트

최적 쾌적도를 얻는 색칠은 다음이 유일하다.

검은색 흰색
검은색 검은색

(2,1)(2, 1)과 (2,2)(2, 2)를 다른 색으로 칠하는 비용이 매우 크다. 따라서 두 픽셀은 같은 색이어야 하며, 그 색은 검은색이 더 낫다. (1,1)(1, 1)과 (1,2)(1, 2)는 어떤 색이 더 나은지 분명하다.

예제1

  1. 예제 1

    입력
    2
    1 10
    2 2
    10 1
    3 3
    0 1 1 0
    0 0 1 1
    1 53 0 0
    1 0 0 53
    
    예상 출력
    24