[VTT Q4 Contest 12] Bài 2: Xóa phần tử [DELK]

Xem dạng PDF

Gửi bài giải


Điểm: 2,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: DELK.INP
Output: DELK.OUT

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

Cho một mảng gồm ~n~ phần tử ~a_1, a_2, \dots, a_n~, các phần tử đôi một khác nhau.

Bạn phải thực hiện đúng ~k~ thao tác lên mảng. Mỗi thao tác chọn một trong hai cách:

  • xóa đi hai phần tử có giá trị nhỏ nhất hiện đang có trong mảng;
  • hoặc xóa đi một phần tử có giá trị lớn nhất hiện đang có trong mảng.

Hãy tìm tổng lớn nhất có thể của các phần tử còn lại trong mảng sau khi làm đủ ~k~ thao tác.

Dữ liệu

  • Dòng đầu chứa hai số nguyên dương ~n~ và ~k~ (~3 \le n \le 2 \times 10^5~, ~1 \le k < 10^5~, ~2 \times k < n~): số phần tử của mảng và số thao tác phải thực hiện.
  • Dòng thứ hai chứa ~n~ số nguyên dương ~a_1, a_2, \dots, a_n~ (~1 \le a_i \le 10^9~).

Kết quả

In ra một số nguyên là tổng lớn nhất có thể của các phần tử còn lại sau ~k~ thao tác.

Ví dụ

Ví dụ 1

DELK.INP

5 1
2 5 1 10 6

DELK.OUT

21
Ví dụ 2

DELK.INP

5 2
2 5 1 10 6

DELK.OUT

11

Giải thích: Ở ví dụ 1, xóa hai số nhỏ nhất là 1 và 2. Ở ví dụ 2, thao tác thứ nhất xóa số 10 (lớn nhất), thao tác thứ hai xóa hai số 1 và 2.


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.