[백준] 11725번 : 트리의 부모 찾기 - Java(자바)

강재원·2022년 12월 1일
0

[코딩테스트] Java

목록 보기
192/200



https://www.acmicpc.net/problem/11725

import java.util.*;

public class Main {
    static ArrayList<Integer>[] arr;
    static int num[];
    static boolean check[];
    static int n;
    static int bf;

    static void dfs(int a){
        check[a]=true;
        num[a]=bf;
        
        for(int i:arr[a]){
            if(check[i]==false){
                bf=a;
                dfs(i);
            }
        }
    }
    
    public static void main(String args[]) {
        Scanner s=new Scanner(System.in);
        n=s.nextInt();
        arr=new ArrayList[n+1];
        for(int i=0;i<=n;i++) arr[i]=new ArrayList<Integer>();
        num=new int[n+1];
        check=new boolean[n+1];
        for(int i=0;i<n-1;i++){
            int u=s.nextInt();
            int v=s.nextInt();
            arr[u].add(v);
            arr[v].add(u);
        }
        bf=1;
        dfs(1);
        for(int i=2;i<=n;i++){
            System.out.println(num[i]);
        }
    }
}
profile
개념정리 & 문법 정리 & 알고리즘 공부

0개의 댓글