
#pragma GCC optimize(2)
#include<bits/stdc++.h>
using namespace std;
long long n,m,tp;
long long mgi[10000010]={0},qzh[10000010]={0};
long long temp=INT_MAX,now;
#define int long long
signed main(){
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
cin>>n>>m;
for(int i=1;i<=n;i++){
cin>>mgi[i];
qzh[i]=qzh[i-1]+mgi[i];
if(qzh[i]>=m) tp=min(i,tp);
}
for(int i=tp;i<=n;i++){
for(int j=i;j>=0;j--){
if(max(qzh[i]-qzh[j],now)<=m){now=max(qzh[i]-qzh[j],now);}
}
}
cout<<now;
}
求区间和≤m的最大值
一直tle求优化