Skip to content

Commit 5e814f4

Browse files
committed
[Feat] 트리의 부모 찾기
1 parent 78ecd97 commit 5e814f4

File tree

1 file changed

+32
-0
lines changed

1 file changed

+32
-0
lines changed

Diff for: src/3week/jaewon/트리의 부모 찾기.kt

+32
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
import java.lang.StringBuilder
2+
import java.util.LinkedList
3+
4+
fun main(){
5+
val n = readln().toInt()
6+
val tree = Array(n+1){ LinkedList<Int>()}
7+
val visited = BooleanArray(n+1){ false }
8+
val parents = IntArray(n+1){-1}
9+
//인접리스트 만들기
10+
repeat(n-1){
11+
val (a,b) = readln().split(" ").map { it.toInt() }
12+
tree[a].add(b)
13+
tree[b].add(a)
14+
}
15+
16+
fun dfs(n: Int){
17+
for(num in tree[n]){
18+
if(!visited[num]) {
19+
visited[num] = true
20+
parents[num] = n
21+
dfs(num)
22+
}
23+
}
24+
}
25+
26+
dfs(1)
27+
val answer = StringBuilder()
28+
for (i in 2..n){
29+
answer.append("${parents[i]}\n")
30+
}
31+
println(answer.toString())
32+
}

0 commit comments

Comments
 (0)