import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.StreamTokenizer;
public class Main {
static int n,m,x,y,ans;
static int[] fa =new int[1010]; static int[] enermy =new int[1010];
static int find(int x){
if (x==fa[x]) return x;
else return fa[x]=find(fa[x]);
}
public static void main(String[] args) throws IOException {
StreamTokenizer in =new StreamTokenizer(new BufferedReader(new InputStreamReader(System.in)));
in.nextToken();n=(int)in.nval; in.nextToken();m=(int)in.nval;ans=0;
for (int i=1;i<=n;i++) fa[i]=i;
String judge;
for (int i=1;i<=m;i++){
in.nextToken();judge=in.sval;
in.nextToken();x=(int)in.nval; in.nextToken();y=(int)in.nval;
if (judge.equals("F")){
if (find(x)!=find(y)) fa[find(x)]=find(y);
}
else {
if (enermy[x] == 0) enermy[x] = y;
else fa[find(enermy[x])] = find(y);
if (enermy[y] == 0) enermy[y] = x;
else fa[find(enermy[y])] = find(x);
}
}
for (int i=1;i<=n;i++){
if (fa[i]==i) ans++;
}
System.out.println(ans);
}}
代码是AC的但是在数据 5 5 F 1 2 F 2 3 F 1 4 F 1 5 E 4 5 输出1,但是4和5不是敌人吗?为什么可以分在一组