CSES - Increasing Array II | Dãy tăng II

View as PDF

Points: 1800 (p) Time limit: 1.0s Memory limit: 512M Input: stdin Output: stdout

Bạn được cung cấp 1 mảng gồm \(n\) số nguyên. Bạn muốn sửa lại giá trị của các phần tử để giá trị các phần tử trong mảng tăng dần, tức là mọi phần tử đều không bé hơn phần tử trước nó.
Trong mỗi lần thay đổi, bạn có thể tăng hoặc giảm giá trị của bất kỳ phần tử nào 1 đơn vị. Số lần thay đổi tối thiểu là bao nhiêu?

Input

  • Dòng đầu chứa số nguyên \(n\): kích thước của mảng.
  • Dòng tiếp theo chứa \(n\) số nguyên \(a_1, a_2, ..., a_n\) là các phần tử của mảng.

Output

  • In ra 1 số nguyên duy nhất là số lần thay đổi tối thiểu.

Constraints

  • \(1 \le n \le 2 \times 10^5\).
  • \(1 \le a_i \le 10^9\).

Example

Sample input

5  
3 8 5 6 5

Sample output

4

Comments

There are no comments at the moment.