java提交
  • 板块P1551 亲戚
  • 楼主NEURookie
  • 当前回复2
  • 已保存回复2
  • 发布时间2021/5/8 16:32
  • 上次更新2023/11/4 23:33:09
查看原帖
java提交
342231
NEURookie楼主2021/5/8 16:32

为什么java提交会runtime error(本地运行没问题啊)

import java.util.Scanner;

public class RelativesJudge {
    static int[] parent;

    public static int find(int x){
        while(parent[x] != x){
            x = parent[x];
        }
        return x;
    }

    public static int union(int x,int y){
        int parent_x = find(x);
        int parent_y = find(y);
        parent[parent_x] = parent_y;
        return parent_y;
    }

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int n,m,p;
        n = scanner.nextInt();
        m = scanner.nextInt();
        p = scanner.nextInt();

        //初始化并查集
        parent = new int[n];
        for(int i = 0;i < parent.length;i++){
            parent[i] = i;
        }
        //读取关系合并并查集
        for(int i = 0;i < m;i++){
            union(scanner.nextInt() - 1,scanner.nextInt() - 1);
        }
        //判断两个集合是否在同一个集合中
        for(int i = 0;i < p;i++){
            System.out.println("判断:"+i);
            if(find(scanner.nextInt() - 1) == find(scanner.nextInt() - 1)){
                System.out.println("Yes");
            }
            else {
                System.out.println("No");
            }
        }
    }
}
2021/5/8 16:32
加载中...