Loại bỏ vật phẩm
Đề bài
Mô tả
Có vật phẩm được đánh số từ đến . Ban đầu vật phẩm số nằm ở vị trí thứ . Các vị trí được chia thành nhiều trang liên tiếp: mỗi trang chứa đúng vị trí (trang gồm các vị trí , trang gồm , ...); trang cuối có thể còn trống một số vị trí.
Trong số đó có vật phẩm đặc biệt cần bị loại bỏ, với chỉ số .
Ta thực hiện lặp lại thao tác sau cho tới khi không còn vật phẩm đặc biệt nào:
- Xét trang có số thứ tự nhỏ nhất mà đang chứa ít nhất một vật phẩm đặc biệt chưa bị loại. Loại bỏ tất cả vật phẩm đặc biệt hiện đang nằm trong trang đó (tính là một thao tác).
- Sau khi một vật phẩm bị loại, vị trí của nó trở nên trống; mọi vật phẩm phía sau (chỉ số lớn hơn) đồng loạt dồn lên lấp chỗ trống. Việc dồn có thể đẩy các vật phẩm lên các trang phía trước. Số trang của mỗi vật phẩm luôn được tính theo vị trí hiện tại sau khi đã dồn.
Hãy tính tổng số thao tác cần thực hiện.
Dữ liệu vào
- Dòng đầu chứa ba số nguyên , , .
- Dòng thứ hai chứa số nguyên phân biệt tăng dần : chỉ số các vật phẩm đặc biệt.
Dữ liệu ra
- In ra một số nguyên: tổng số thao tác.
Ràng buộc
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 10 4 5 3 5 7 10 |
3 | Trang gồm vị trí. Thao tác 1: trang là , loại và . Sau khi dồn, trang là . Thao tác 2: loại . Thao tác 3: trang chứa số đặc biệt còn lại là , loại . |
| 13 4 5 7 8 9 10 |
1 | Cả đều nằm trong trang (vị trí ), loại hết chỉ trong một thao tác. |
Bình luận