社区讨论
T4 95pts求教
题目总版参与者 4已保存回复 14
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 14 条
- 当前快照
- 1 份
- 快照标识符
- @lo1nu4xw
- 此快照首次捕获于
- 2023/10/23 00:05 2 年前
- 此快照最后确认于
- 2023/11/03 00:47 2 年前
记录
别问,问就是大号被禁言了。
CPP#include<bits/stdc++.h>
#define ll long long
#define N 200200
using namespace std;
ll c,q,re,op,p,s,x,j,cnt=1,t[N],sum[N],maxx[N];
char C;
ll R(){
re=0;
C=getchar();
while(C<'0'||C>'9'){
C=getchar();
}
while(C>='0'&&C<='9'){
re=re*10+C-'0';
C=getchar();
}
return re;
}
void W(ll x){
if(x/10){
W(x/10);
}
putchar(x%10+'0');
}
int main(){
c=R();
q=R();
while(q--){
op=R();
if(op!=4)x=R();
if(op==1){
t[cnt]=x;
sum[cnt]=x+sum[cnt-1];
maxx[cnt]=x;
j = cnt-1;
while(j>=0&&maxx[j]<maxx[j+1]){
maxx[j]=maxx[j+1];j--;
}
cnt++;
}
if(op==2){
p+=x;
}
if(op==3){
s=lower_bound(sum+1,sum+cnt-1,p+x)-sum;
W(p+x-sum[s-1]);
putchar('\n');
}
if(op==4){
s=lower_bound(sum+1,sum+cnt-1,p)-sum;
if(t[s]==p)s++;
W(maxx[s]);
putchar('\n');
}
}
return 0;
}
回复
共 14 条回复,欢迎继续交流。
正在加载回复...