Dãy số (HSG9 Đà Nẵng 2026)
Xem PDF
Điểm:
1200
Thời gian:
1.0s
Bộ nhớ:
256M
Input:
bàn phím
Output:
màn hình
Cho dãy số nguyên dương \(a_1, a_2, \dots, a_n\). Mỗi thao tác bạn được phép chọn một phần tử bất kỳ trong dãy để tăng lên \(1\) đơn vị.
Yêu cầu: Thực hiện \(m\) thao tác để phần tử nhỏ nhất của dãy (sau khi thực hiện \(m\) thao tác) nhận giá trị lớn nhất.
Input
- Dòng đầu tiên gồm hai số nguyên \(n\) và \(m\) (\(1 \le n \le 2 \cdot 10^5\); \(0 \le m \le 10^9\)) lần lượt là số lượng phần tử của dãy và số thao tác thực hiện.
- Dòng thứ hai gồm \(n\) số nguyên \(a_1, a_2, \dots, a_n\) (\(1 \le a_i \le 10^9\)) là giá trị ban đầu của các phần tử.
Output
- Ghi ra một số nguyên duy nhất là giá trị nhỏ nhất của dãy số lớn nhất có thể đạt được sau khi thực hiện \(m\) thao tác.
Example
Test 1
Input
5 6
2 8 6 5 9
Output
6
Note
Ban đầu dãy là \([2, 8, 6, 5, 9]\). Ta có \(6\) thao tác.
- Tăng phần tử \(2\) lên \(4\) lần \(\rightarrow\) thành \(6\) (dùng \(4\) thao tác).
- Tăng phần tử \(5\) lên \(1\) lần \(\rightarrow\) thành \(6\) (dùng \(1\) thao tác).
- Tăng phần tử \(6\) lên \(1\) lần \(\rightarrow\) thành \(7\) (dùng \(1\) thao tác).
Dãy trở thành \([6, 8, 7, 6, 9]\), giá trị nhỏ nhất của dãy là \(6\). Đây là giá trị nhỏ nhất lớn nhất có thể đạt được.
Scoring
- Subtask \(1\) (\(20\%\) số điểm): \(n \le 10^5\) và \(m \le 1\).
- Subtask \(2\) (\(20\%\) số điểm): \(n = 2\) và \(m \le 10^2\).
- Subtask \(3\) (\(30\%\) số điểm): \(n \le 10^3\) và \(m \le 10^2\).
- Subtask \(4\) (\(30\%\) số điểm): Không có ràng buộc gì thêm.
Bình luận (1)