#include <bits/stdc++.h>
#define For(i,a,b) for(int i=a; i<=b; i++)
#define Forn(i,a,b) for(int i = a; i>=b; i--)
#define F first
#define S second
#define ll long long
#define pii pair<int,int>
#define pil pair<int, long long>
#define pli pair<long long,int>
#define pll pair<long long, long long>
#define PB push_back
#define mp make_pair
#define bit(x , i) ((x >> i) & 1 )
#define CNT(x) __builtin_popcountll(x)
using namespace std;
int const N = 2005 ;
int n, m, a[N],sz ;
ll ans = 1e17 + 5, sum, sumbl[N], cnt[N];
ll f[N][N] ;
void sub3()
{
for(int i = 1 ; i <= n ; i++)
sumbl[i] = sumbl[i - 1] + a[i] ;
memset(f, 0x3f, sizeof f) ;
for(int i = 1 ; i <= n ; i++)
f[i][1] = sumbl[i] * i ;
for(int x = 2 ; x <= m ; x++)
for(int i = x ; i <= n ; i++)
for(int j = 1 ; j <= i / x ; j++)
f[i][x] = min(f[i][x], f[i - j][x - 1] + (sumbl[i] - sumbl[i - j]) * j);
cout << f[n][m] ;
}
int main()
{
ios_base :: sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
freopen("AQUARIUM.INP","r",stdin);
freopen("AQUARIUM.OUT","w",stdout);
cin >> n >> m ;
for(int i = 1 ; i <= n ; i++)
cin >> a[i] ;
sort(a + 1, a + 1 + n) ;
sub3() ;
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNkZWZpbmUgRm9yKGksYSxiKSBmb3IoaW50IGk9YTsgaTw9YjsgaSsrKQojZGVmaW5lIEZvcm4oaSxhLGIpIGZvcihpbnQgaSA9IGE7IGk+PWI7IGktLSkKI2RlZmluZSBGIGZpcnN0CiNkZWZpbmUgUyBzZWNvbmQKI2RlZmluZSBsbCBsb25nIGxvbmcKI2RlZmluZSBwaWkgcGFpcjxpbnQsaW50PgojZGVmaW5lIHBpbCBwYWlyPGludCwgbG9uZyBsb25nPgojZGVmaW5lIHBsaSBwYWlyPGxvbmcgbG9uZyxpbnQ+CiNkZWZpbmUgcGxsIHBhaXI8bG9uZyBsb25nLCBsb25nIGxvbmc+CiNkZWZpbmUgUEIgcHVzaF9iYWNrCiNkZWZpbmUgbXAgbWFrZV9wYWlyCiNkZWZpbmUgYml0KHggLCBpKSAoKHggPj4gaSkgJiAxICkKI2RlZmluZSBDTlQoeCkgX19idWlsdGluX3BvcGNvdW50bGwoeCkKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKaW50IGNvbnN0IE4gPSAyMDA1IDsKaW50IG4sIG0sIGFbTl0sc3ogOwpsbCBhbnMgPSAxZTE3ICsgNSwgc3VtLCBzdW1ibFtOXSwgY250W05dOwpsbCBmW05dW05dIDsKdm9pZCBzdWIzKCkKewogICAgZm9yKGludCBpID0gMSA7IGkgPD0gbiA7IGkrKykKICAgICAgICBzdW1ibFtpXSA9IHN1bWJsW2kgLSAxXSArIGFbaV0gOwogICAgbWVtc2V0KGYsIDB4M2YsIHNpemVvZiBmKSA7CiAgICBmb3IoaW50IGkgPSAxIDsgaSA8PSBuIDsgaSsrKQogICAgICAgIGZbaV1bMV0gPSBzdW1ibFtpXSAqIGkgOwogICAgZm9yKGludCB4ID0gMiA7IHggPD0gbSA7IHgrKykKICAgICAgICBmb3IoaW50IGkgPSB4IDsgaSA8PSBuIDsgaSsrKQogICAgICAgICAgICBmb3IoaW50IGogPSAxIDsgaiA8PSBpIC8geCA7IGorKykKICAgICAgICAgICAgICAgIGZbaV1beF0gPSBtaW4oZltpXVt4XSwgZltpIC0gal1beCAtIDFdICsgKHN1bWJsW2ldIC0gc3VtYmxbaSAtIGpdKSAqIGopOwogICAgY291dCA8PCBmW25dW21dIDsKfQppbnQgbWFpbigpCnsKICAgIGlvc19iYXNlIDo6IHN5bmNfd2l0aF9zdGRpbyhmYWxzZSk7CiAgICBjaW4udGllKDApOwogICAgY291dC50aWUoMCk7CiAgICBmcmVvcGVuKCJBUVVBUklVTS5JTlAiLCJyIixzdGRpbik7CiAgICBmcmVvcGVuKCJBUVVBUklVTS5PVVQiLCJ3IixzdGRvdXQpOwogICAgY2luID4+IG4gPj4gbSA7CiAgICBmb3IoaW50IGkgPSAxIDsgaSA8PSBuIDsgaSsrKQogICAgICAgIGNpbiA+PiBhW2ldIDsKICAgIHNvcnQoYSArIDEsIGEgKyAxICsgbikgOwoKICAgICAgICBzdWIzKCkgOwogICAgcmV0dXJuIDA7Cn0K