代码
#include<bits/stdc++.h>
using namespace std;
long long n,p,a[1000005],b[1000006],c[1000007],sum[1000008];
int main(){
cin>>n>>p;
for(int i=1;i<=n;i++){
cin>>a[i];
}
long long o=0;
sum[1]=b[1]=a[1];
for(int i=2;i<=n;i++){
sum[i]=max(sum[i-1],o)+a[i];
b[i]=max(b[i-1],sum[i]);
}
c[1]=b[1];
c[2]=a[1]+b[1];
for(int i=3;i<=n;i++){
c[i]=max(b[i-1],o)+c[i-1];
c[i]%=p;
}
if(c[n]>=0){
cout<<c[n]%p;
}
else{
cout<<c[1]%p;
}
return 0;
}