好的我知道qaq
爆long long了
by 良辰、 @ 2019-02-17 09:35:59
给你改了,AC
```cpp
#include<bits/stdc++.h>
using namespace std;
const long long inf=-2147483647;
const long long maxn=800005;
long long n,cnt;
long long tree[maxn];
long long d,m,t;
char x[2];
void build(long long s,long long k,long long o,long long l,long long r){
if(l==r){
tree[o]=k;
return;
}
long long mid=(l+r)>>1;
if(mid>=s) build(s,k,o<<1,l,mid);
if(mid<s) build(s,k,o<<1|1,mid+1,r);
tree[o]=max(tree[o<<1],tree[o<<1|1])%d;
}
long long ask(long long ll,long long rr,long long o,long long l,long long r){
if(ll<=l&&rr>=r) return tree[o];
long long mid=(l+r)>>1;
if(mid>=rr) return ask(ll,rr,o<<1,l,mid);
if(mid<ll) return ask(ll,rr,o<<1|1,mid+1,r);
tree[o]=max(tree[o<<1],tree[o<<1|1])%d;
return max(ask(ll,mid,o<<1,l,mid),ask(mid+1,rr,o<<1|1,mid+1,r));
}
int main()
{
scanf("%lld%lld",&n,&d);
for(long long i=1;i<=n;i++){
scanf("%s %lld",&x,&m);
if(x[0]=='A'){
build(cnt+1,(m+t)%d,1,1,n);
cnt++;
}
else{
if(m==0) t=0;
else t=ask(cnt-m+1,cnt,1,1,n)%d;
printf("%lld\n",t);
}
}
return 0;
}
```
by Unaccepted @ 2019-02-17 09:38:25
咕咕咕
by 浅梦墨汐 @ 2019-02-17 15:24:29
~~**咕咕咕**~~
by Unaccepted @ 2019-02-19 14:10:25