| 시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
|---|---|---|---|---|---|
| 1 초 | 512 MB | 524 | 248 | 189 | 52.646% |
욕심쟁이 판다가 나무를 갉아 먹어서 나무가 망가졌다!
입력으로 방향 그래프가 주어진다. 이 그래프의 모든 간선을 양방향으로 바꾸면 트리가 된다.
당신은 임의로 간선의 방향을 뒤집을 수 있다. 당신의 목적은 간선을 뒤집는 횟수를 최소로 하여 다음을 만족하는 정점이 존재하도록 하는 것이다.
이 정점에서 모든 정점에 도달할 수 있다.
첫째 줄에 정점의 개수 $N$이 주어진다. $(2 \le N \le 100,000)$
다음 줄부터 $N-1$개의 줄에 두 개의 정수 $u, v$가 주어진다. 이는 정점 $u$에서 정점 $v$로 향하는 간선을 의미한다. $(1 \le u, v \le N$, $u ≠ v)$
정점의 번호는 $1$부터 $N$까지이다. 그래프의 모든 간선을 양방향으로 바꾸면 트리가 됨이 보장된다.
첫째 줄에 뒤집어야하는 간선을 $N-1$자리 이진수로 출력한다. 왼쪽에서 $i$번째 비트는 $i$번째 간선을 뒤집어야 하면 1, 아니면 0이다. 이진수에 등장하는 1의 개수가 최소가 되도록 해야 한다.
가능한 답이 여러 가지일 경우, 아무거나 출력하면 된다.
5 2 4 2 3 3 1 5 1
0001
6 5 1 3 1 3 4 2 4 2 6
10100
University > 경인지역 대학 연합 > shake! 2021 E번