Bạn muốn mua cả \(N\) món hàng, món thứ \(i\) có giá niêm yết \(V_i\). Cửa hàng khuyến mãi kiểu "trần giá": bạn chọn một số nguyên dương \(M\), khi đó món nào có giá niêm yết lớn hơn \(M\) chỉ phải trả đúng \(M\), còn món có giá không vượt quá \(M\) vẫn trả nguyên giá. Như vậy tổng tiền phải trả là
Cửa hàng chỉ chấp nhận mức trần \(M\) nếu \(F(M) \ge S\). Hãy tìm mức trần \(M\) (số nguyên dương) sao cho số tiền phải trả nhỏ nhất, tức là \(M\) nhỏ nhất thoả \(F(M) \ge S\). Nếu không có \(M\) nào thoả (kể cả khi không đặt trần, tổng giá vẫn nhỏ hơn \(S\)) thì in ra \(-1\).
Ví dụ: ba món giá \(30, 50, 90\) và \(M = 60\) thì phải trả \(30 + 50 + 60 = 140\).
Input
- Dòng đầu: hai số nguyên \(N\) và \(S\).
- Dòng hai: \(N\) số nguyên \(V_1, \dots, V_N\).
Output
- Một số nguyên: giá trị \(M\) tối ưu, hoặc \(-1\) nếu không tồn tại.
Constraints
- \(2 \le N \le 10^5\)
- \(1 \le S \le 10^{11}\)
- \(10^3 \le V_i \le 10^6\)
Sample Input
4 7000
1500 4000 2500 6000
Sample Output
1834
Explanation
Với \(M = 1834\): \(1500 + 1834 \cdot 3 = 7002 \ge 7000\). Với \(M = 1833\): \(1500 + 1833 \cdot 3 = 6999 < 7000\). Vậy đáp án là \(1834\).
Bình luận
Đăng nhập để bình luận
Chưa có bình luận nào.