#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
#define pb push_back
#define eb emplace_back
typedef long long ll;
const int N=2e5+10;
int main()
{
    ios_base::sync_with_stdio();cin.tie(0);
    int n,k,a[N];
    vector<pair<int,int>> b;
    cin>>n>>k;
    for(int i=0;i<n;i++) cin>>a[i],b.eb(a[i],i);
    sort(b.rbegin(),b.rend());

    ll maks=-1e18;
    for(int i=0;i<n;i++)
    {
	ll prek=-a[i],poslek=-a[i];
	int r=0,l=0;
	int ind1=(n-i-1>=k-1); 	//samo poslek
	int ind2=(i>=k-1); 	//samo prek
	if(ind1&&ind2)
	{
	    for(auto x:b) if(r<k-1&&x.second>i) poslek+=x.first,r++;
	    for(auto x:b) if(l<k-1&&x.second<i) prek+=x.first,l++;
	    maks=max(maks,poslek);
	    maks=max(maks,prek);
	}
	else if(ind1)
	{
	    for(auto x:b) if(r<k-1&&x.second>i) poslek+=x.first,r++;
	    maks=max(maks,poslek);
	}
	else if(ind2)
	{
	    for(auto x:b) if(l<k-1&&x.second<i) prek+=x.first,l++;
	    maks=max(maks,prek);
	}
    }
    cout<<maks;
    return 0;
}