#PH004. Mảng không giảm (Increasing Array)

Mảng không giảm (Increasing Array)

Mảng không giảm

Nguồn: CSES Problem Set

Đề bài

Cho một mảng gồm nn số nguyên x1,x2,…,xnx_1,x_2,\ldots,x_n.

Bạn muốn biến đổi mảng thành một dãy không giảm, nghĩa là mỗi phần tử phải có giá trị không nhỏ hơn phần tử đứng ngay trước nó:

x1≤x2≤⋯≤xn.x_1 \le x_2 \le \cdots \le x_n.

Trong mỗi thao tác, bạn được chọn một phần tử bất kỳ của mảng và tăng giá trị của phần tử đó lên 11.

Hãy xác định số thao tác ít nhất cần thực hiện để mảng trở thành một dãy không giảm.

Input

Dòng đầu tiên chứa số nguyên nn — số lượng phần tử của mảng.

Dòng thứ hai chứa nn số nguyên x1,x2,…,xnx_1,x_2,\ldots,x_n — các phần tử của mảng.

Output

In ra số thao tác ít nhất cần thực hiện để mảng trở thành một dãy không giảm.

Subtask

  • Subtask 1 — 20%: 1≤n≤1001 \le n \le 100; 1≤xi≤1001 \le x_i \le 100.
  • Subtask 2 — 30%: 1≤n≤20001 \le n \le 2000; 1≤xi≤1091 \le x_i \le 10^9.
  • Subtask 3 — 50%: 1≤n≤2⋅1051 \le n \le 2\cdot10^5; 1≤xi≤1091 \le x_i \le 10^9.

Ví dụ

Input

5
3 2 5 1 7

Output

5