Có n cái kẹo cần chia cho k người. Mỗi chiếc kẹo có được chia cho chính xác một người hoặc bị vứt bỏ.
K người được đánh số theo thứ tự từ 1 đến k. PMT là người số 1 trong k người đó. Để chia kẹo cho k người, PMT quyết định lựa chọn một số nguyên dương x , rồi chia cho người thứ nhất x cái kẹo, người thứ hai x cái kẹo, … người thứ k x cái kẹo. Nếu còn thừa, lại tiếp tục chia cho người thứ nhất x cái kẹo, người thứ 2 x cái kẹo, … và chia theo vòng lặp như thế. Việc chia kẹo chỉ dừng lại khi số kẹo còn lại hết hoặc không chia hết cho x.
PMT không được lựa chọn x > M vì điều đó được coi làm tham lam. Ngoài ra, số lần được nhận kẹo của mỗi người không được lớn hơn D.
Hãy giúp PMT lựa chọn số x sao cho số kẹo mà cô ấy nhận được là lớn nhất ( Tuy bị sâu răng từ nhỏ nhưng PMT rất tham lam nên muốn mình được thật nhiều kẹo).
Input : Chứa bốn số nguyên dương n,k,M,D ( n <= 10^18, 2 <= k <= n, D <= 1000).
Output : In ra số kẹo lớn nhất mà PMT có thể nhận được.
input
20 4 5 2
output:
8
*Giải thích : Nếu PMT chọn x = 4 : Người thứ 1 nhận 4 kẹo, người thứ 2 nhận 4 kẹo, người thứ 4 nhận 4 kẹo, người thứ 4 nhận 4 kẹo và người thứ 1 lại được nhận thêm 4 chiếc nữa. Tổng mà PMT nhận được : 8.
Nếu chọn x = 5 : PMT chỉ nhận được 5 chiếc kẹo.
Nếu chọn x = 3 : PMT chỉ nhận được 6 chiếc kẹo.
PMT không thể chọn x = 1 hoặc x = 2 vì khi đấy, số lần nhận kẹo của PMT sẽ lớn hơn 2.