Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
32683 hi_hi 【J】ask C++ 通过 100 73 MS 82352 KB 946 2024-09-25 21:33:28

Tests(25/25):


#include<bits/stdc++.h> using namespace std; long long sum[100005][105],top,n,q,a[100005],ans; int main(){ scanf("%lld%lld",&n,&q); for(int i=1;i<=n;i++){ scanf("%lld",&a[i]); for(int j=0;j<=100;j++){ sum[i][j]=sum[i-1][j]; if(j<a[i])sum[i][j]++; } ans+=sum[i-1][a[i]]; } top=n; while(q--){ long long op,x; scanf("%lld",&op); if(op==2){ ans-=sum[top-1][a[top]]; for(int j=0;j<=100;j++)sum[top][j]=0; top--; printf("%lld\n",ans); } else{ top++; scanf("%lld",&x); a[top]=x; for(int j=0;j<=100;j++){ sum[top][j]=sum[max(0ll,top-1)][j]; if(j<x)sum[top][j]++; } ans+=sum[top-1][x]; printf("%lld\n",ans); } } return 0; }


测评信息: