import sys from collections import deque def main(): input = sys.stdin.read().split() N = int(input[0]) A = list(map(int, input[1:N+1])) queue = deque() # Find initial peaks for i in range(N-2): if A[i] < A[i+1] and A[i+1] > A[i+2]: queue.append(i) ans = 0 while queue: i = queue.popleft() if A[i] < A[i+1] and A[i+1] > A[i+2]: ans += 1 min_val = min(A[i], A[i+2]) A[i+1] = min_val - 1 # Check the affected regions for dj in [-1, 0, 1]: j = i + dj if 0 <= j < N-2: if A[j] < A[j+1] and A[j+1] > A[j+2]: queue.append(j) print(ans) if __name__ == '__main__': main()