#include<bits/stdc++.h>
using namespace std;
bool p[100001];
int father[100001];
int find(int k){
if(father[k]==k){
return k;
}
else return father[k]=find(father[k]);
}
int ffind(int k){
if(father[k]==k||p[k]==1){
return k;
}
else{
return ffind(father[k]);
}
}
int main(){
int n,q;
cin>>n>>q;
for(int i=1;i<=n;i++){
father[i]=i;
}
for(int i=1;i<=n-1;i++){
int r,t;
cin>>r>>t;
father[find(t)]=r;
}
for(int i=1;i<=q;i++){
char oper;int num;
cin>>oper>>num;
if(oper=='C'){
p[num]=1;
}
else{
cout<<ffind(num)<<endl;
}
}
return 0;
}
脑子一热写的,写完我都不知道怎么写出来的莫名其妙就能跑了QAQ