2 solutions
-
1
#include<bits/stdc++.h> using namespace std; int main () { priority_queue<int,vector<int>,greater<int>> q; int n,m; cin>>n>>m; for(int i=1;i<=n;i++) { int x; cin>>x; if(q.size()==m) { int y=q.top()+x; q.pop(); q.push(y); } else q.push(x); } while(q.size()>1) { q.pop(); } cout<<q.top(); return 0; }
-
-4
#include<bits/stdc++.h> using namespace std; int main () { priority_queue<int,vector<int>,greater<int>> q; int n,m; cin>>n>>m; for(int i=1;i<=n;i++) { int x; cin>>x; if(q.size()==m) { int y=q.top()+x; q.pop(); q.push(y); } else q.push(x); } while(q.size()>1) { q.pop(); } cout<<q.top(); return 0; }
- 1
Information
- ID
- 965
- Time
- 1000ms
- Memory
- 256MiB
- Difficulty
- 3
- Tags
- (None)
- # Submissions
- 40
- Accepted
- 16
- Uploaded By