아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

신기한 루트 개수 찾기

면접 대비

시간 제한3초메모리 제한1024 MB

요약
정점 K를 루트로 잡았을 때 A와 B의 최소 공통 조상이 A도 B도 아니게 되는 K의 개수를 센다.
난이도

보통10점 중 6점

유형
트리, DFS, 수학
정답자
아직 제출이 없습니다

문제

NN개의 정점으로 이루어진 트리가 주어진다. 트리의 각 정점은 11번부터 NN번까지 번호가 매겨져있다.

두 정수 A,BA, B가 주어진다. KK번 정점(1≤K≤N)(1 \le K \le N)을 루트로 설정했을 때, AA번 정점과 BB번 정점의 가장 가까운 공통 조상이 AA번 정점도 아니고 BB번 정점도 아니게 되는 KK의 개수를 구하여라.

입력

첫 번째 줄에 정점의 개수 NN과 두 정수 A,BA, B가 주어진다. (4≤N≤300,000(4 \le N \le 300,000; 1≤A,B≤N1 \le A, B \le N; A≠B)A \neq B)

두 번째 줄부터 N−1N-1개의 줄에 걸쳐 각 간선이 연결하는 두 정점 u,vu, v가 공백으로 구분되어 주어진다. (1≤u,v≤N1 \le u, v \le N)

주어지는 입력은 트리임이 보장된다.

출력

문제의 조건을 만족하는 KK의 개수를 출력한다.

힌트

가장 가까운 공통 조상에 관한 설명은 링크를 참고 하면 된다.

예제2

  1. 예제 1

    입력
    4 1 4
    1 2
    2 3
    3 4
    
    예상 출력
    2
    
  2. 예제 2

    입력
    6 2 4
    1 2
    2 3
    1 4
    4 5
    4 6
    
    예상 출력
    1