← Home
#include<bits/stdc++.h>
using namespace std;
#define N 200005
#define l(x) (x&(-x))
char s[N],to[128],ch;
set<int>p[3];
set<int>::iterator it; 
int c[3][N],a,n,q,i;
void add(int x,int y,int v){
	while(y<N)c[x][y]+=v,y+=l(y);
}
int sum(int x,int y){
	int ret=0;while(y)ret+=c[x][y],y-=l(y);return ret;
}
int F(int x,int y,int z){ 
	if(!p[x].size())return 0;
	if(!p[y].size())return sum(x,n);
	if(!p[z].size())return 0;
	int ret=sum(x,n),f1=*p[y].begin(),f2=*p[z].begin();
	if(f2>f1)ret-=sum(x,f2)-sum(x,f1);
	it=p[y].end(),f1=*--it;
	it=p[z].end(),f2=*--it;
	if(f1>f2)ret-=sum(x,f1)-sum(x,f2);
	return ret;
}
int cal(){return F(0,2,1)+F(1,0,2)+F(2,1,0);}
int main(){
	scanf("%d%d%s",&n,&q,s+1);
	to['R']=1;to['S']=2;
	for(i=1;i<=n;++i)p[to[s[i]]].insert(i),add(to[s[i]],i,1);
	cout<<cal()<<"\n";
	while(q--){
		cin>>a>>ch;
		add(to[s[a]],a,-1);
		p[to[s[a]]].erase(a);
		s[a]=ch;
		add(to[s[a]],a,1);
		p[to[s[a]]].insert(a);
		cout<<cal()<<"\n";
	}
}