n,m=map(int,input().split())
a=sorted(map(int,input().split()))
z=[0]*m
s=0
for i in range(n):
s+=a[i]
z+=[s+z[i]]
print(*z[m:])
num_inp=lambda: int(input())
arr_inp=lambda: list(map(int,input().split()))
sp_inp=lambda: map(int,input().split())
str_inp=lambda:input()
#include<bits/stdc++.h>
using namespace std;
#define ll long long
void dfs(vector<bool>& vis,vector<vector<int>>& ed,ll& curr_ed,ll& curr_v,int node)
{
vis[node]=true;
curr_v++;
curr_ed+=ed[node].size();
for(auto adj:ed[node])
if(!vis[adj])
dfs(vis,ed,curr_ed,curr_v,adj);
}
void solve()
{
int n,m;
cin>>n>>m;
vector<int> arr(n);
for(int i=0;i<n;i++)
cin>>arr[i];
sort(arr.begin(),arr.end());
//store prefix sum
vector<ll> pre(n);
pre[0]=arr[0];
for(int i=1;i<n;i++)
pre[i]=pre[i-1]+arr[i];
vector<ll> ans(n);
ans[0]=0;
for(int i=0;i<n;i++)
{
ll curr=pre[i];
ll oth=0;
if(i>=m)
{
curr-=pre[i-m];
oth+=(ans[i-m]+pre[i-m]);
}
curr+=oth;
ans[i]=curr;
cout<<curr<<" ";
}
}
int main() {
// int t;
// cin>>t;
// while(t--)
// {
// cout<<solve()<<endl;
// // solve();
// }
// cout<<solve()<<endl;
solve();
}
589. N-ary Tree Preorder Traversal | 1299. Replace Elements with Greatest Element on Right Side |
1768. Merge Strings Alternately | 561. Array Partition I |
1374. Generate a String With Characters That Have Odd Counts | 1822. Sign of the Product of an Array |
1464. Maximum Product of Two Elements in an Array | 1323. Maximum 69 Number |
832. Flipping an Image | 1295. Find Numbers with Even Number of Digits |
1704. Determine if String Halves Are Alike | 1732. Find the Highest Altitude |
709. To Lower Case | 1688. Count of Matches in Tournament |
1684. Count the Number of Consistent Strings | 1588. Sum of All Odd Length Subarrays |
1662. Check If Two String Arrays are Equivalent | 1832. Check if the Sentence Is Pangram |
1678. Goal Parser Interpretation | 1389. Create Target Array in the Given Order |
1313. Decompress Run-Length Encoded List | 1281. Subtract the Product and Sum of Digits of an Integer |
1342. Number of Steps to Reduce a Number to Zero | 1528. Shuffle String |
1365. How Many Numbers Are Smaller Than the Current Number | 771. Jewels and Stones |
1512. Number of Good Pairs | 672. Richest Customer Wealth |
1470. Shuffle the Array | 1431. Kids With the Greatest Number of Candies |