邪门RE!!!!

P3367 【模板】并查集

iamputin @ 2024-06-09 08:04:53

本来想着10分钟过一道题的,没想到第一题直接全给我爆RE ???????

这代码哪里有问题了,本地可以过,洛谷IDE也可以过,一提交就全RE

#include <bits/stdc++.h>
using namespace std;
using ll = long long;

const int MAXN = 100005;
const int inf = numeric_limits<int>::max();
int fa[MAXN];
int n, m;

int find(int x) {
  if (fa[x] == x)
    return x;
  return fa[x] = find(fa[x]);
}

int unity(int x, int y) {
  x = find(x), y = find(y);
  if (x != y) fa[x] = y;
}

void init() {
  for (int i = 1; i <= n; ++i) {
    fa[i] = i;
  }
}

int main() {
  ios::sync_with_stdio(false);
  cin.tie(nullptr);

  cin >> n >> m;
  init();
  for (int i = 0; i < m; ++i) {
    int z, x, y;
    cin >> z >> x >> y;
    if (z == 1) {
      unity(x, y);
    } else {
      cout << ((find(x) == find(y)) ? "Y" : "N") << endl;
    }
  }
}

by WydnksqhbD @ 2024-06-09 08:49:40

@yjy_echo 洛谷就是检测是否有非 0 数返回。


by peng201203 @ 2024-06-09 08:53:26

main函数不是要return 0;吗 不return 0;本地可以过,洛谷不能过


by peng201203 @ 2024-06-09 08:57:30

@ttourist


by peng201203 @ 2024-06-09 08:58:12

oj过不了


by yjy_echo @ 2024-06-09 09:00:27

@peng201203 其实很多时候不return它的默认值都是return 0; \ 但是如果你return 1; 的话会有问题\ 平时还是养成好习惯return下的


by peng201203 @ 2024-06-09 09:15:00

哦~


by iamputin @ 2024-06-22 12:02:41

@peng201203 @WydnksqhbD 这是因为程序崩溃了程序也会有非零返回值,所以判断程序是否有问题就是直接看返回值,返回0说明执行到了最后,程序正常运行,相当于是一种共识了吧


by WydnksqhbD @ 2024-06-22 17:00:02

@ttourist qaq


上一页 |