只输入都OLE???
#include<bits/stdc++.h>
using namespace std;
#define int long long
typedef pair<int,int> PII ;
const int MAXN=3e5+10;
const int N=2e9+10;
int n,K,idx;
int cal,lst;
int dis[MAXN];
int ans;
bool delet[MAXN*2];
priority_queue < PII > q ;
struct stu
{
int enter=-1,pre=-1,edge=0;
}city[MAXN*2];
void init()
{
// for(int i=1;i<=n;i++)
// {
// q.push( {dis[i],i} ) ;
// if(i==1)
// {
// city[i].edge=dis[i];
// city[i].enter=i+1;
// continue;
// }
// else if (i==n)
// {
// city[i].edge=dis[i];
// city[i].pre=i-1;
// continue;
// }
// else
// {
// city[i].edge=dis[i];
// city[i].enter=i+1;
// city[i].pre=i-1;
// continue;
// }
// }
// idx=n;
}
signed main()
{
scanf("%lld%lld",&n,&K);
for(int i=1;i<=n;i++) scanf("%lld",dis+i);
// init();
// int cnt=0;
// while(cnt<K)
// {
// int val=q.top().first,index=q.top().second;
// q.pop();
// if(delet[index]) continue;
// if(val<0) break;
// ans+=val;
// if( city[index].pre!=-1 && city[index].enter!=-1 )
// {
// delet[city[index].pre]=1;delet[city[index].enter]=1;
// int PRE=city[city[index].pre].pre,NEXT=city[city[index].enter].enter;
// ++idx;
// if(PRE!=-1) city[PRE].enter=idx;
// if(NEXT!=-1) city[NEXT].pre=idx;
// city[idx].edge=city[city[index].enter].edge+city[city[index].pre].edge-val;
// city[idx].pre=PRE;
// city[idx].enter=NEXT;
// }
// else if(city[index].pre!=-1)
// {
// delet[city[index].pre]=1;
// int PRE=city[city[index].pre].pre;
// ++idx;
// if(PRE!=-1) city[PRE].enter=idx;
// city[idx].edge=city[city[index].pre].edge-val-N;
// city[idx].pre=PRE;
// }
// else
// {
// delet[city[index].enter]=1;
// int NEXT=city[city[index].enter].enter;
// ++idx;
// if(NEXT!=-1) city[NEXT].pre=idx;
// city[idx].edge=city[city[index].enter].edge-val-N;
// city[idx].enter=NEXT;
// }
// q.push({city[idx].edge,idx});
// cnt++;
// }
// printf("%lld",ans);
}