샌드캐슬 2
시간 제한4초메모리 제한1024 MB
인접한 칸으로만 이동하며 매번 높이가 낮아지는 경로를 따라갔을 때 방문한 칸들이 정확히 직사각형을 이루는 경우의 수를 구합니다.
문제
JOI-kun은 모래사장에서 놀면서 모래성을 만든다. 모래성은 개의 행과 개의 열로 이루어진 직사각형 모래 영역 안에 있다. 북쪽에서 번째 행, 서쪽에서 번째 열에 있는 칸의 높이는 이다. 모든 높이는 서로 다르다.
JOI-kun은 다음 행동을 했다. 먼저 칸 하나를 골라 그 칸에서 출발했다. 그다음 현재 칸에서 상하좌우 중 한 방향의 인접한 칸으로 이동했다. 이동할 칸은 현재 칸보다 반드시 낮아야 한다. 이 이동을 0번 이상 반복했다.
그 결과 방문한 칸들을 위에서 보면 직사각형을 이룬다. JOI-kun이 방문한 칸들로 만들 수 있는 직사각형의 개수를 구하라.
입력
첫 줄에 정수 와 가 주어진다. 이어지는 개의 줄에는 각각 개의 정수가 주어지며, 번째 줄의 번째 정수가 이다.
출력
JOI-kun이 방문한 칸들로 만들 수 있는 직사각형의 개수를 한 줄에 출력한다.
제한
, , , 모든 , 에 대해 이다. 서로 다른 두 칸의 높이는 항상 다르다.