노드 하나가 사라졌다
시간 제한1초메모리 제한1024 MB
정점이 2^n - 2개인 트리가 주어질 때, 루트가 아닌 정점 하나를 지워 완전 이진 트리를 만들 수 있는 제거 정점의 부모를 모두 구합니다.
문제
정수 이 주어진다. 다음 절차를 McDic's generation이라고 부른다.
- 정점이 개인 완전 이진 트리를 만든다. 이 트리에는 루트가 정확히 하나 있고, 모든 잎의 깊이(루트로부터의 거리)가 같으며, 잎이 아닌 모든 정점은 자식을 정확히 두 개 가진다.
- 루트가 아닌 정점 를 하나 고른다.
- 를 트리에서 제거하고, 의 부모와 의 직접 자식들을 새 간선으로 잇는다. 에 자식이 없으면 새 간선은 만들지 않는다.
주어진 트리가 McDic's generation으로 만들어질 수 있는지 판단하라. 만들어질 수 있다면, 주어진 트리에서 제거된 정점의 부모를 구하라.
입력
첫 줄에 정수 ()이 주어진다.
이어지는 개의 줄 각각에는 정수 , ()가 주어지며, 두 정점 사이에 간선이 있다는 뜻이다. 주어진 간선들은 트리를 이룬다.
출력
두 줄을 출력한다.
첫 줄에는 가능한 답의 개수를 출력한다. 주어진 트리가 McDic's generation으로 만들어질 수 없으면 0을 출력한다.
둘째 줄에는 가능한 모든 답을 오름차순으로 공백으로 구분하여 출력한다. 만들어질 수 없는 경우에는 둘째 줄에 아무것도 출력하지 않는다.
힌트
첫 번째 예시에서는 만이 가능한 답이다.

두 번째 예시에서는 가능한 답이 2개이다.

세 번째 예시의 트리는 McDic's generation으로 만들어질 수 없다.