[C10_KH_23] Phần thưởng

Xem dạng PDF

Gửi bài giải

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

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

Hằng năm, công ty Alpha dựa vào thành tích lao động của các công nhân để chấm điểm tích lũy cho từng người và điểm số này dùng để xác định phần thưởng cho họ vào những dịp lễ. Công ty hiện có ~m~ công nhân được đánh số từ ~1~ đến ~m~, công nhân thứ ~i~ có điểm tích lũy là ~p_i~. Năm nay, ban giám đốc sẽ chuẩn bị ~n~ phần thưởng có giá trị như nhau và sẽ tặng thưởng cho toàn bộ công nhân hoặc chỉ tặng cho một số người có điểm số cao. Giá trị của mỗi phần thưởng bằng điểm số của người có điểm thấp nhất trong những người được tặng thưởng.

Yêu cầu

Hãy tính tổng giá trị lớn nhất của các phần thưởng được tặng.

Dữ liệu đầu vào

Gồm hai dòng:

  • Dòng đầu ghi hai số nguyên dương ~m~ và ~n~ ~(1 \le m, n \le 10^5)~;
  • Dòng thứ hai ghi ~m~ số nguyên dương ~p_1, p_2, ..., p_m~. Mỗi số có giá trị không vượt quá ~1000~ và giữa các số được ghi cách nhau bởi một dấu cách.

Dữ liệu đầu ra

Gồm một số nguyên duy nhất là kết quả của bài toán.

Ràng buộc dữ liệu

  • Có 60% số test có ~1 \le m, n \le 10^3~;
  • Có 40% số test có ~10^3 < m, n \le 10^6~.

Ví dụ

Ví dụ 1
INPUT
6 4
2 12 9 8 10 7
OUTPUT
32

Giải thích: Nhóm người được tặng thưởng là những người có điểm số: ~12, 9, 8, 10~ và tổng giá trị là ~8 \times 4 = 32~

Ví dụ 2
INPUT
4 5
9 3 1 6
OUTPUT
12

Giải thích: Nhóm người được tặng thưởng là những người có điểm số: ~9, 6~ và tổng giá trị là ~6 \times 2 = 12~


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.