Hoán vị của m
Point: 100.0
Time limit: 1.0s
Memory limit: 64 M
Input:
stdin
Output:
stdout
Author:
Problem type
B - Thuật toán cơ bản: 02 - Sắp xếp
Ngôn ngữ cho phép
C, C#, C++, Java, Pascal, Python, Text
Cho một dãy gồm n số nguyên dương. Ở mỗi bước ta được quyền xóa đi một số bất kì trong dãy hoặc thêm vào dãy một số bất kì.
Yêu cầu:
Hãy viết chương trình xác định số bước ít nhất cần thực hiện để dãy thu được là một hoán vị của 1, 2, …, m. Với m là một số nguyên dương nào đó trong dãy đã cho.
Dữ liệu vào Specification
- Dòng đầu tiên ghi số nguyên không âm N (0 < N ≤ 10000) .
- Dòng 2 ghi n số nguyên dương a1, a2, …, an cách nhau một dấu cách trống (1 ≤ n ≤ 10^9)
Dữ liệu ra Specification
- Số bước ít nhất tìm được.
Sample Input
7
1 3 2 5 7 8 2021
Sample Output
3
Giải thích : Xóa đi số 2021 và thêm vào hai số 4, 6 ta được dãy 1 3 2 5 7 8 4 6 là hoán vị của 1, 2, …, 8