为什么CE
  • 板块灌水区
  • 楼主yhy2024
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/9/23 19:46
  • 上次更新2024/9/23 19:50:29
查看原帖
为什么CE
1262406
yhy2024楼主2024/9/23 19:46

#include<bits/stdc++.h>
using namespace std;
char s[200005],y;
int n,m,ans,x;
int main(){
	cin>>n>>m;
	scanf("%s",s+1); 
	for(int i=1;i<=n;i++){
		if(s[i]=='A'&&s[i+1]=='B'&&s[i+2]=='C'){
			ans++;
		}
	}
	while(m--){
		cin>>x>>y;
		if(s[x]==y){
			cout<<ans<<endl;
			continue;
		}
		if(x-1>0&&s[x-1]=='A'&&s[x]=='B'&&s[x+1]=='C'&&y!='B'){
			ans--;
		}
		if(s[x]=='A'&&s[x+1]=='B'&&s[x+2]=='C'&&y!='A'){
			ans--;
		}
		if(s-2>0&&s[x-2]=='A'&&s[x-1]=='B'&&s[x]=='C'&&y!='C'){
			ans--;
		}
		if(x-1>0&&s[x-1]=='A'&&s[x]!='B'&&s[x+1]=='C'&&y=='B'){
			ans++;
		}
		if(s[x]!='A'&&s[x+1]=='B'&&s[x+2]=='C'&&y=='A'){
			ans++;
		}
		if(x-2>0&&s[x-2]=='A'&&s[x-1]=='B'&&s[x]!='C'&&y=='C'){
			ans++;
		}
		s[x]=y;
		cout<<ans<<endl;
	}
	return 0;
}
2024/9/23 19:46
加载中...