TLE求帮助
  • 板块学术版
  • 楼主du_jason
  • 当前回复3
  • 已保存回复3
  • 发布时间2024/12/18 21:27
  • 上次更新2024/12/19 15:41:57
查看原帖
TLE求帮助
1400224
du_jason楼主2024/12/18 21:27
#include <bits/stdc++.h>
using namespace std;
const int M = 1e6+5;
int a[M],n,N;
stack<int> sta;
void sovle(){
	int ans = 0;
	char c;
	int y;
	cin>>c;
	if(c=='D'){
		cin>>y;
		a[y] = 0;
		sta.push(y);
	}
	if(c=='Q'){
		cin>>y;
		if(a[y]!=0){
			for(int i = y;i>=1;--i){
				if(a[i]==0) break;
				ans+=a[i];
			}
			for(int i = y+1;i<=n;++i){
				if(a[i]==0) break;
				ans+=a[i];
			}
			cout<<ans<<"\n";
		}
		else cout<<0<<"\n";
	}
	if(c=='R'){
		int z = sta.top();
		sta.pop();
		a[z] = 1;
	}
	return ;
}
int main(){
	cin>>n>>N;
	for(int i=1;i<=n;++i) a[i] = 1;
	while(N--) sovle();
	return 0;
}
P1503鬼子进村
后面两点 TLE!!!
求大佬帮优化
2024/12/18 21:27
加载中...