我这过了!是不是数据太水
查看原帖
我这过了!是不是数据太水
1081537
wangzihan__sb楼主2024/10/3 08:12
#include<bits/stdc++.h>
using namespace std;
#define int long long
int m,mod,last_maxn=0,t=0,n,cnt=0,l;
char c;
int a[10000005],sum[10000005];
signed main() {
	ios::sync_with_stdio(0);
	cin>>m>>mod;
	while (m--) {
		cin>>c;
		if (c=='A') {
			cin>>n;
			n=(n+t)%mod;
			a[++cnt]=n;
			int h=cnt-1;
			while (a[cnt]>sum[h] && h>=1) {
				sum[h]=a[cnt];
				h--;
			}
			sum[cnt]=a[cnt];
		}
		if (c=='Q') {
			cin>>l;
			t=0;
//			cout<<l<<" "<<cnt<<endl;
			t=sum[cnt-l+1];
			cout<<t<<endl;
		}
//		for (int i=1;i<=cnt;i++){
//			cout<<sum[i]<<" ";
//		}
//		cout<<endl;
	}
	return 0;
}
2024/10/3 08:12
加载中...