求助大佬,100分但11个点错了
查看原帖
求助大佬,100分但11个点错了
560044
wangyi_c楼主2022/8/6 15:56

link

#include<bits/stdc++.h>
#define int long long
using namespace std;
int n,p,s,m[1000010],f[1000010],maxx=-1e18,ans;
signed main() {
	ios::sync_with_stdio(0);
	cin.tie(0);
	cout.tie(0);
	cin>>n>>p;
	for(int i=1;i<=n;i++){
		int x;
		cin>>x;
		if(s<0) s=0;
		s+=x;
		maxx=max(s,maxx);
		m[i]=maxx%p;
	}
	f[1]=m[1];
	f[2]=f[1]+m[1];
	for(int i=3;i<=n;i++){
		f[i]=max(f[i-1],f[i-1]+m[i-1]);
	}
	cout<<max(f[1],f[n])%p;
	return 0;
}

求调!

2022/8/6 15:56
加载中...