딱 알맞게 초록색
시간 제한1초메모리 제한512 MB
N×N 격자에서 최솟값이 정확히 100인 모든 직사각형 부분 격자의 개수를 센다.
문제
Farmer John의 목초지는 격자()로 나타낼 수 있으며, 각 칸에는 잔디가 자라고 있다(거대한 체스판을 떠올리면 된다). 토양의 차이 때문에 어떤 칸의 잔디는 다른 칸보다 더 초록색이다. 각 칸 는 범위의 정수인 초록 정도 로 나타낸다.
Farmer John은 목초지의 직사각형 부분 격자를 사진으로 찍으려고 한다. 부분 격자가 충분히 초록색으로 보이되 지나치게 초록색이지는 않아야 하므로, 의 최솟값이 정확히 100인 부분 격자를 찍기로 한다. 그가 찍을 수 있는 서로 다른 사진의 수를 구하자. 부분 격자는 목초지 전체만큼 클 수도 있고 한 칸만큼 작을 수도 있다(전체 부분 격자의 수는 개이다. 이 수는 표준 32비트 정수에 담기에는 너무 클 수 있으므로 C++의 "long long"과 같은 64비트 정수 자료형이 필요할 수 있다).
입력
첫째 줄에 이 주어진다. 다음 개의 줄에는 각각 개의 정수가 주어지며, 목초지의 값을 나타낸다.
출력
Farmer John이 찍을 수 있는 서로 다른 사진의 수, 즉 초록 정도의 최솟값이 정확히 100인 직사각형 부분 격자의 수를 출력한다.
이 문제에서 다루는 정수의 크기가 크므로 C/C++의 "long long"과 같은 64비트 정수 자료형이 필요할 수 있다.