fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. int main() {
  5. // your code goes here
  6. int t; cin >> t;
  7. while(t-->0) {
  8. int n,x; cin >> n >> x;
  9. priority_queue<int> a;
  10. for(int i=0;i<n;++i) {
  11. int temp; cin >> temp;
  12. a.push(temp);
  13. }
  14. a.push(0);
  15. int result=0;
  16. while (1){
  17. int val=0; vector<int> b;
  18. for(int i=0;i<x;++i) {
  19. if(a.top()==0) break;
  20. val=a.top();
  21. b.push_back(val);
  22. a.pop();
  23. }
  24. if(val==0) break;
  25. result+=val;
  26. for(int k:b) {
  27. a.push(k-val);
  28. }
  29. }
  30. cout << result << "\n";
  31. }
  32. return 0;
  33. }
Success #stdin #stdout 0s 5284KB
stdin
4
3 2
3 1 2
3 3
2 1 3
5 3
2 2 1 9 2
7 4
2 5 3 3 5 2 5
stdout
3
3
9
7