幸福度の高いチョコレートから食べるのがよいため、入力を配列で受け取り、降順に並び替えて順番に処理をしていくとよいです。
ただし、 がチョコレートの数より大きい場合に配列外参照を起こさないように注意してください。
#include <bits/stdc++.h>
using namespace std;
int main(){
int n, k;
cin >> n >> k;
vector<int> a(n);
for(int i = 0; i < n; i++){
cin >> a[i];
}
sort(a.rbegin(), a.rend());
long long ans = 0;
for(int i = 0; i < min(n, k); i++){
ans += a[i];
}
cout << ans << endl;
}