Sưu tập số
Xem dạng PDFBạn được cho một mảng gồm các số từ 1 đến ~n~, mỗi số xuất hiện đúng một lần, nhưng theo thứ tự ngẫu nhiên.
Nhiệm vụ của bạn là thu thập các số từ ~1~ đến ~n~ theo thứ tự tăng dần ~(1 → 2 → 3 → ... → n)~.
Ở mỗi vòng, bạn sẽ duyệt từ trái sang phải trong mảng và thu thập được càng nhiều số càng tốt (theo thứ tự mong muốn hiện tại). Hỏi bạn cần tối thiểu bao nhiêu vòng để thu thập hết tất cả các số?
Đầu vào:
Dòng đầu tiên chứa số nguyên ~n~: kích thước mảng.
Dòng thứ hai chứa n số nguyên ~x₁, x₂, ..., xₙ~: các số trong mảng, là hoán vị của ~1~ đến ~n~.
Đầu ra:
In ra một số nguyên: số vòng tối thiểu cần để thu thập đủ các số từ ~1~ đến ~n~.
Ràng buộc:
~1 \le n \le 2 \cdot 10^5~
Ví dụ :
Input:
5
4 2 1 5 3
Output:
3
Giải thích:
Vòng 1: gặp 4 → bỏ qua, 2 → bỏ qua, 1 → thu, 5 → bỏ qua, 3 → bỏ qua → Đã thu được 1
Vòng 2: từ đầu, cần 2: gặp 4, 2 → thu, 1, 5, 3 → 3 cũng thu luôn → Thu được 2, 3
Vòng 3: từ đầu, cần 4: gặp 4 → thu, 5 → thu
→ Tổng cộng 3 vòng.
Bình luận