실행 시간 제한 | 메모리 제한 |
---|---|
2 초 | 512 MB |
게임 개발자인 주환은, 개의 방 ()으로 구성된 가상 세계를 만들었습니다.
이 방들은 개의 통로로 연결되어 있어 어느 방에서든 다른 모든 방으로 갈 수 있습니다. 이 가상 세계의 구조는 트리의 형태를 하고 있습니다.
그 후 28년 동안 트리 구조에서 발생하는 복잡한 프로그래밍 문제들을 해결해오던 주환은 트리 형태의 가상 세계가 너무 복잡하다고 결론지었습니다. 그는 가상 세계가 일렬의 경로로 구성되어 있다면 프로그래밍 문제들을 더 쉽게 해결할 수 있을 것이라고 생각했습니다.
그래서 그의 계획은 통로들을 여러 개의 일렬 경로로 재구성하고, 각 경로를 능숙한 게임 관리자에게 할당하는 것입니다. 충돌을 방지하기 위해, 그는 모든 경로가 같은 길이를 갖도록 하려고 합니다. 그는 어떤 길이에 대해 이러한 재구성이 가능한지 알고 싶어합니다.
더 쉽게 말하면, 각각 에 대해, 주환이 통로를 재배열하여 정확히 의 길이를 가진 경로를 만들 수 있는지 알고 싶어합니다.
첫 번째 줄에는 단일 정수 가 포함되어 있습니다.
다음 줄 각각에는 정점 와 사이의 간선을 나타내는 두 개의 공백으로 구분된 정수 와 가 포함되어 있습니다. 와 각각은 범위 에 있습니다.
의 길이를 가진 비트 문자열을 출력하여야 합니다. 각 에 대해, 왼쪽에서 번째 비트는 트리의 간선을 정확히 길이의 경로로 나눌 수 있다면 1을, 그렇지 않다면 0을 나타내야 합니다.
13 1 2 2 3 2 4 4 5 2 6 6 7 6 8 8 9 9 10 8 11 11 12 12 13
111000000000
이 트리를 길이 의 경로로 분할할 수 있습니다.
에 대해. 의 경우 가능한 경로 집합은 다음과 같습니다: