Đề bài
Dãy số được gọi là tăng nếu .
Bạn được cho một dãy số và một số nguyên dương . Trong mỗi lần thao tác, bạn chọn một phần tử của dãy số và cộng thêm vào nó. Số thao tác ít nhất là bao nhiêu để biến đổi dãy số đã cho trở thành dãy số tăng.
Dữ liệu vàoincr.inp
Vào từ tệp văn bản incr.inp. Dòng đầu tiên chứa hai số nguyên và (). Dòng thứ hai chứa số nguyên tương ứng là dãy số ().
Kết quả raincr.out
Ghi ra tệp văn bản incr.out một số nguyên là số thao tác ít nhất để biến đổi dãy số đã cho trở thành dãy số tăng.
Ràng buộc
- Có 30% số test ứng với 30% số điểm thỏa mãn: ;
- 30% số test khác ứng với 30% số điểm thỏa mãn: và ;
- 40% số test còn lại ứng với 40% số điểm: Không có thêm ràng buộc nào.
Ví dụ
4 2 1 3 3 2
3
Giải thích
Trong ví dụ trên, ta có dãy số là: và . Số thao tác ít nhất để biến đổi dãy số trở thành dãy số tăng là 3 và một trong các cách thực hiện như sau:
- Thao tác thứ nhất: Cộng thêm vào phần tử thứ ba, dãy số trở thành: ;
- Thao tác thứ hai: Cộng thêm vào phần tử thứ tư, dãy số trở thành: ;
- Thao tác thứ ba: Cộng thêm vào phần tử thứ tư, dãy số trở thành: và là dãy số tăng.