题目链接:
http://202.197.224.59/OnlineJudge2/index.php/Problem/read/id/1264
Partial Sum
Bobo has a integer sequence a1,a2,…,an of length n. Each time, he selects two ends 0≤l
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const ll MAXN=1e5+10;
int main(){
ll n,m,c;
std::ios::sync_with_stdio(false);
while(cin>>n>>m>>c){
ll ans[MAXN];
ans[0]=0;
for(ll i=1;i<=n;i++){
ll x;
cin>>x;
ans[i]=ans[i-1]+x;
}
sort(ans,ans+1+n);
ll cnt=0;
ll res=0;
while(m--){
ll maxn=ans[n--];
ll minn=ans[cnt++];
if(abs(maxn-minn)-c<0){
break;
}
res+=(abs(maxn-minn)-c);
}
cout<<res<<endl;
}
return 0;
}