HSG9 Quảng Ninh 2026 - Dãy số

Xem dạng PDF

Gửi bài giải

Điểm: 35,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 1G
Input: stdin
Output: stdout

Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Output Only, Pascal, PyPy, Python, Scratch, TEXT

Trong trường hợp đề bài hiển thị không chính xác, bạn có thể tải đề bài tại đây: Đề bài

Cho một dãy gồm ~n~ số nguyên ~a_1, a_2, \dots, a_n~ và các số nguyên ~b, k_1, k_2~. Bạn được thực hiện tối đa ~k_1 + k_2~ phép toán trên các phần tử của dãy số đã cho.

  • Phép toán loại 1: Chọn một số ~a_i~ bất kì của dãy và thay thế ~a_i~ bằng ~[\frac{a_i}{2}]~ (chia đôi và lấy phần nguyên). Bạn được sử dụng tối đa ~k_1~ phép toán loại 1.
  • Phép toán loại 2: Chọn một số ~a_i~ bất kì của dãy và thay thế ~a_i~ bằng giá trị lớn nhất của hai số ~a_i - b~ và ~0~ (trừ đi ~b~ đơn vị, nếu kết quả âm thì lấy bằng 0). Bạn được sử dụng tối đa ~k_2~ phép toán loại 2.

Quy tắc: Với mỗi ~a_i~ trong dãy, bạn có thể chọn: không phép toán nào, chỉ phép toán loại 1, chỉ phép toán loại 2, hoặc dùng cả hai phép toán, mỗi phép toán được thực hiện tối đa 1 lần với mỗi ~a_i~. Nếu dùng cả hai loại trên cùng một số, bạn có thể thực hiện theo thứ tự tùy ý.

Yêu cầu: Hãy tìm tổng nhỏ nhất của dãy số sau khi sử dụng tối đa ~k_1~ phép toán loại 1 và ~k_2~ phép toán loại 2.

Input

  • Dòng đầu chứa 4 số nguyên ~n, b, k_1, k_2~ (~1 \le n \le 300, 1 \le b \le 10^9, 0 \le k_1, k_2 \le n~);
  • Dòng thứ hai chứa ~n~ số nguyên dương ~a_i~ (~1 \le a_i \le 10^9~).

Output

  • Một số nguyên duy nhất là tổng nhỏ nhất tìm được.

Sample Input 1

7 4 2 0
1 2 1 8 3 5 7

Sample Output 1

19

Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.