求助20分MLE
查看原帖
求助20分MLE
87578
codeli楼主2022/8/12 22:36
#include <bits/stdc++.h>
using namespace std;
const int MaxN = 1000010;
int p[MaxN];
int find(int x) {
    if (p[x] != x) find(p[x]);
    return p[x];
}
int main() {
    int n, m;
    cin >> n >> m;
    for (int i = 1; i <= n; i++) {
        p[i] = i;
    }
    while (m--) {
        int x, y, z;
        cin >> x >> y >> z;
        if (x == 1) {
            p[find(y)] = find(z);
        } else {
            if (find(y) == find(z))
                cout << "Y" << endl;
            else
                cout << "N" << endl;
        }
    }
    return 0;
}
2022/8/12 22:36
加载中...