일몰 감상 2
시간 제한1초메모리 제한128 MB
n 곱하기 n 격자의 각 점에서 맨해튼 거리 k 이내 건물 높이의 최댓값을 구해 모두 더한다.
문제
바이트 시(市)의 주민들은 자기 집 옥상에서 일몰 보기를 좋아한다. 일몰이 유난히 아름다운 날이면, 더 나은 전망을 얻을 수 있는 근처 건물의 옥상까지 찾아가는 사람도 있다.
도시는 한 변의 길이가 인 정사각형 격자로 이루어져 있고, 건물은 각 격자점마다 하나씩 서 있다. 두 격자점 사이의 거리는 도시 거리(맨해튼 거리)로 잰다. 두 점 와 사이의 도시 거리는 다음과 같다.
준은 새 집을 사려고 한다. 그는 일몰을 아주 좋아해서, 자기 집에서 도시 거리로 이하만큼 떨어진 건물이라면 기꺼이 찾아간다.
각 격자점마다 그곳에 살 때 준이 도달할 수 있는 가장 높은 건물의 높이를 구하려고 한다. 즉, 모든 격자점에 대해 그 지점에서 도시 거리로 이하만큼 떨어진 건물들 중 가장 높은 높이를 구한 뒤, 그 값들을 전부 더한 합을 출력한다.
입력
첫째 줄에 세 자연수 , , 가 공백 하나로 구분되어 주어진다 (, , ). 는 도시의 건물 높이를 생성하는 데 쓰인다. 행과 열은 번부터 번호를 매기며, 행 열(, )에 서 있는 건물의 높이는 다음과 같다.
출력
각 격자점에 대해 도시 거리로 이하만큼 떨어진 건물들 중 가장 높은 높이를 구하고, 이 최댓값들을 모든 격자점에 대해 더한 값을 한 줄에 출력한다. 건물 높이는 위 식에서 로 나눈 나머지로 생성되지만, 최종 합에는 나머지 연산을 적용하지 않고 그대로 출력한다.