Tổng K số lớn nhất
Xem dạng PDF
Gửi bài giải
Điểm:
100,00 (OI)
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
256M
Input:
stdin
Output:
stdout
Tác giả:
Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Pascal, Python
Cho một dãy gồm ~n~ số nguyên và số nguyên ~k~. Hãy tính tổng của ~k~ phần tử lớn nhất trong dãy (các phần tử bằng nhau vẫn tính từng phần tử một). Gợi ý: dùng priority_queue (hàng đợi ưu tiên) hoặc sắp xếp.
Dữ liệu vào
Dòng đầu tiên chứa hai số nguyên ~n, k~ (~1 \le k \le n \le 10^5~).
Dòng thứ hai chứa ~n~ số nguyên ~a_1, \dots, a_n~ (~|a_i| \le 10^9~).
Kết quả
In ra tổng của ~k~ phần tử lớn nhất.
Ví dụ
Ví dụ 1
Input:
5 2
3 9 2 7 1
Output:
16
Ví dụ 2
Input:
3 3
1 2 3
Output:
6
Giải thích
priority_queue<long long> luôn cho phần tử lớn nhất ở top(). Với dãy 3 9 2 7 1 và ~k = 2~ ta lấy ~9 + 7 = 16~.
Đang tải...