만드는 중입니다

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

마왕의 성

면접 대비

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

요약
각 칸마다, 그 칸보다 높지 않은 칸들 중 그 칸과 상하좌우로 이어진 영역의 세금 합을 구합니다.
난이도

보통10점 중 5점

유형
유니온 파인드, 정렬, 행렬
정답자
아직 제출이 없습니다

문제

세계 정복의 야망을 품은 마왕은 자신의 국가를 세우기로 했다! 그러나 나라를 세우기 전에 영토를 정하고 성을 짓는 등 할 일이 많다.

영토가 될 수 있는 부지는 N×MN \times M 크기의 직사각형이며, 부지는 1×11 \times 1 크기의 땅으로 나뉘어 있다. 마왕은 땅을 하나 이상 골라 자신의 영토로 선포하고, 그중 한 땅에 마왕의 성을 세운다. 각 땅에는 "땅의 높이"와 "얻을 수 있는 세금"이라는 두 가지 수치가 정해져 있다. 다음 그림은 예제 2에서 각 땅이 가진 세금과 높이를 나타낸 것이다.

마왕은 국민과의 소통을 중시하므로, 영토에 속한 모든 땅은 상하좌우로 인접한 영토를 따라 이동해서 마왕의 성에 도달할 수 있어야 한다. 또 마왕은 세상에서 가장 높은 사람이 되어야 한다는 확고한 철학을 가지고 있으므로, 성이 있는 땅의 높이는 영토의 나머지 모든 땅의 높이보다 크거나 같아야 한다.

영토에 포함된 모든 땅에서 얻는 세금을 더한 값이 마왕이 얻는 세금이다. 마왕은 N×MN \times M개의 땅 각각에 성을 세울 때 얻을 수 있는 세금의 최댓값을 알고 싶어 한다. 마왕은 프로그래밍을 할 줄 모르므로, 마왕에게 사로잡힌 여러분이 이 문제를 해결하는 프로그램을 작성하자.

입력

첫째 줄에 영토가 될 수 있는 부지의 크기 NN, MM이 공백으로 구분되어 주어진다.

둘째 줄부터 NN개의 줄에 걸쳐 (ii, jj)에 위치한 땅의 높이 hijh_{ij}가 공백으로 구분되어 MM개씩 주어진다.

NN + 1번째 줄부터 NN개의 줄에 걸쳐 (ii, jj)에 위치한 땅을 마왕의 영토로 만들 때 얻을 수 있는 세금 cijc_{ij}가 공백으로 구분되어 MM개씩 주어진다.

출력

NN개의 줄에 걸쳐 각 위치에 마왕의 성이 있는 경우, 영토를 적당히 선포해서 걷을 수 있는 세금의 합의 최댓값을 공백으로 구분하여 MM개씩 출력한다.

제한

1≤N,M≤1,0001 \le N, M \le 1,000

1≤hij,cij≤1091 \le h_{ij}, c_{ij} \le 10^9

예제2

  1. 예제 1

    입력
    3 4
    1 1 7 4
    3 1 2 2
    4 5 3 6
    1 1 1 1
    1 1 1 1
    1 1 1 1
    
    예상 출력
    3 3 12 9
    7 3 5 5
    9 10 7 11
    
  2. 예제 2

    입력
    3 3
    1 2 1
    3 10 4
    1 5 1
    2 9 4
    6 16 9
    14 11 6
    
    예상 출력
    2 15 4
    35 77 50
    14 61 6