P1892
为什么这样的代码会WA
#include <bits/stdc++.h>
using namespace std;
const int maxn = 1e4+1;
int n, m;
char opt;
int fa[maxn<<1];
int get(int a) {
if(fa[a] != a) fa[a] = get(fa[a]);
return fa[a];
}
void link(int a, int b) {
fa[get(a)] = get(b);
}
void init() {
for(int i = 1;i<= (maxn << 1);i++) {
fa[i] = i;
}
}
int main() {
init();
scanf("%d%d", &n, &m);
while(m--) {
scanf("%s", &opt);
int a, b;
scanf("%d%d", &a, &b);
if(opt == "F") {
link(a, b);
}
else if(opt == "E") {
link(a+n, b);
link(b+n, a);
}
}
int ans = 0;
for(int i =1;i<=n;i++) {
if(i == fa[i])ans++;
}
printf("%d\n", ans);
return 0;
}
而把“F”改成单引号就AC???