#include<bits/stdc++.h>
using namespace std;int n,m;
int q;int a[100100];
int findf(int k)
{
if(a[k]==k)return k;
return a[k]=findf(a[k]);
}
void hebing(int x,int y)
{
int fx=findf(x);
int fy=findf(y);
if(fx!=fy)a[fx]=fy;
}
int main()
{
int n,m;
cin>>n>>m;
for (int i=1;i<=2*n;i++)a[i]=i;
for (int i=1;i<=m;i++)
{
int xr,yr;
char w;
cin>>w>>xr>>yr;
if(w=='F')
{
hebing(xr,yr);
}
else{
hebing (yr,xr+n);
hebing (xr,yr+n);
}
}
vector<bool>f(n+1,false);
int ans=0;
for (int i=1;i<=n;i++)
{
int root=findf(a[i]);
if(!f[root])
{
ans++;
f[root]=true;
}
}
cout<<ans;
return 0;
}