80pts WA
#include<bits/stdc++.h>
#define N 1000005
#define int long long
#define INF 1e18
#define pii pair<int,int>
#define fi first
#define se second
using namespace std;
int n,m,a[N],pre[N],nxt[N],ans;
bool v[N];
priority_queue<pii >q;
signed main(){
ios::sync_with_stdio(false);
cin>>n>>m;
for(int i=1;i<=n;i++)
cin>>a[i],q.push({a[i],i}),pre[i]=i-1,nxt[i]=i+1;
pre[1]=n,nxt[n]=1;
for(int T=1;T<=m;T++){
while(v[q.top().se]) q.pop();
pii t=q.top(); q.pop();
if(t.fi<=0) break;
ans+=t.fi; int i=t.se;
v[pre[i]]=v[nxt[i]]=true;
a[i]*=-1,a[i]+=a[nxt[i]]+a[pre[i]];
q.push({a[i],i});
pre[i]=pre[pre[i]],nxt[i]=nxt[nxt[i]];
nxt[pre[i]]=pre[nxt[i]]=i;
}
cout<<ans;
return 0;
}