2 solutions

  • 1
    @ 2024-3-16 15:48:08
    #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
      @ 2024-7-23 10:30:42
      #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