Time limit: 1.0s , Memory limit: 256M , Points: 1500 (partial)
Lưu ý: Bài toán này không chia Subtask.
Cho dãy hoán vị độ dài . Bạn có thể thực hiện thao tác sau với bất kỳ số lần nào có thể không thực hiện:
- Chọn một đoạn liên tiếp thỏa mãn , tiến hành sắp xếp các phần tử trên đoạn này theo bất kỳ thứ tự nào.
Bạn hãy thực hiện thao tác trên với số lần ít nhất để sắp xếp dãy hoán vị theo thứ tự tăng dần.
Input
- Dòng đầu tiên chứa số nguyên .
- Dòng thứ hai chứa số nguyên của dãy .
- Dữ liệu đảm bảo dãy là một dãy hoán vị hợp lệ.
Output
- In ra số lần thực hiện thao tác ít nhất. Nếu không thể sắp xếp dãy hoán vị theo thứ tự tăng dần, in ra .
Examples
Sample Input
5
2 1 4 5 3
Sample Output
2
Notes
Trong ví dụ, các thao tác được thực hiện như sau:
- Chọn đoạn và sắp xếp đoạn này để dãy hoán vị trở thành .
- Chọn đoạn và sắp xếp đoạn này để dãy hoán vị trở thành .
Comments