Nộp bài | Các bài nộp | Làm tốt nhất | Về danh sách bài |
P187PROI - ROUND 7I - MÁI NHÀ |
Cho dãy số A[] gồm có N phần tử. Bạn được phép tăng, giảm một phần tử mỗi lần 1 đơn vị. Nhiệm vụ của bạn là hãy sử dụng ít bước nhất có thể để chuyển dãy số đã cho về dạng dãy số ‘mái nhà’, với các tính chất sau :
- Một phần tử lớn nhất là đỉnh (giả sử là phần tử thứ i)
- Các phần tử bên trái và bên phải giảm dần đi 1 đơn vị, tức là với mọi j, A[j] = A[i] - |i-j|
- Tất cả các phần tử A[j] đều phải lớn hơn 0.
Input
Dòng đầu tiên là số nguyên N (N <= 5000).
Dòng tiếp theo gồm N phần tử của dãy số (1 <= A[i] <= 5000).
Output
In ra số bước ít nhất để có thể hoàn thành bài toán trên.
Example
Test 1:
Input: 5
4 5 6 2 2 Output: 3
Test 2:
Input:
6
4 5 6 5 4 3
Output:
0
Giải thích test 1: Chuyển dãy số về 4 5 4 3 2
Được gửi lên bởi: | adm |
Ngày: | 2018-05-13 |
Thời gian chạy: | 1s |
Giới hạn mã nguồn: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Ngôn ngữ cho phép: | ASM32-GCC ASM32 ASM64 MAWK BC C CSHARP C++ 4.3.2 CPP CPP14 COFFEE LISP sbcl DART FORTH GO JAVA JS-RHINO JS-MONKEY KTLN OCT PAS-GPC PAS-FPC PERL PERL6 PROLOG PYTHON PYTHON3 PY_NBC R RACKET SQLITE SWIFT UNLAMBDA |