第2题 P11642 【MX-X8-T1】「TAOI-3」幸运草
#include<bits/stdc++.h>
using namespace std;
int n,x,a[100010],b[100010],maxx,c=1;
int main(){
cin>>n>>x;
for(int i=1;i<=n;i++) cin>>a[i],b[i]=a[i];
if(n==1){
if(a[1]>x) cout<<a[1]<<endl;
else cout<<x<<endl;
return 0;
}
if(n%2==0){
int j=n,i=1;
while(i!=n/2&&j!=n/2){
int ans=0;
for(int k=i;k<=j;k++) b[k]=x;
for(int k=1;k<=n;k++) ans+=b[k];
if(ans>maxx) maxx=ans;
if(c%2==1)
i++;
else
j++;
c++;
for(int k=1;k<=n;k++) b[k]=a[k];
}
}
else{
int j=n,i=1;
while(i!=n/2+1&&j!=n/2+1){
int ans=0;
for(int k=i;k<=j;k++) b[k]=x;
for(int k=1;k<=n;k++) ans+=b[k];
if(ans>maxx) maxx=ans;
if(c%2==1)
i++;
else
j--;
c++;
}
}
cout<<maxx<<endl;
return 0;
}