체리 컴퍼니

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

요약
부모 번호가 자식 번호보다 작은 루트 트리에서 사원 번호가 [L, R] 범위인 직원만 출근할 때, 유도된 숲의 연결 요소 개수를 Q개의 질의마다 구한다.
난이도

보통10점 중 7점

유형
트리, DFS, 세그먼트 트리, 누적 합
정답자
아직 제출이 없습니다

문제

체리 컴퍼니는 국내 유일무이 체리 전문 디저트 회사이다. 회사의 직원은 총 NN명이며, 각 직원은 11부터 NN번까지의 고유한 사원 번호를 가진다. 11번 직원은 회사의 사장이며 직속상관이 없다. 11번 직원을 제외한 나머지 직원은 한 명의 직속상관을 가지며, ii번 직원의 직속상관의 사원 번호 P_iP\_i는 ii보다 작다.

체리 컴퍼니는 새로운 디저트 출시를 위해 QQ일 동안 매일 회의가 열린다. 각 날마다 회의는 아래 과정을 거쳐 소집된다.

  • 체리 컴퍼니는 탄력 근무제를 시행하고 있어 ii번째 날에는 사원 번호가 L_iL\_i 이상 R_iR\_i 이하인 직원만 출근한다.
  • 출근한 직원 중 자신의 직속상관이 출근한 직원은 직속상관과 같은 회의에 참석한다.
  • 출근한 직원 중 자신의 직속상관이 출근하지 않은 직원은 새로운 회의를 소집한다.
  • 출근하지 않은 직원은 해당 날짜에 열리는 회의에 영향을 주지 않는다.

(N,L_i,R_i)=(5,2,4)\left(N, L\_i, R\_i\right)=\left(5, 2, 4\right)일 때 회의가 열린 모습

위 그림은 체리 컴퍼니의 조직도에 출근한 직원들과 소집된 회의를 나타낸 예시이다.

주어진 조건에서 ii번째 날에 소집되는 회의의 개수를 출력하시오.

입력

첫 번째 줄에 직원의 수를 나타내는 정수 NN이 주어진다. (2≤N≤300,000)(2 \leq N \leq 300\\,000)

두 번째 줄에 i(2≤i≤N)i(2 \leq i \leq N)번 직원의 직속상관의 사원 번호를 나타내는 N−1N - 1개의 정수 P_2,⋯ ,P_NP\_2, \cdots, P\_N이 공백으로 구분되어 주어진다. (1≤P_i<i)(1 \leq P\_i < i)

세 번째 줄에 회의가 열리는 날의 수를 나타내는 정수 QQ가 주어진다. (1≤Q≤300,000)(1 \leq Q \leq 300\\,000)

다음 QQ개의 줄에 걸쳐, ii번째 줄에 ii번째 날에 출근하는 직원의 사원 번호 범위를 나타내는 두 정수 L_iL\_i과 R_iR\_i이 공백으로 구분되어 주어진다. (1≤L_i≤R_i≤N)(1 \leq L\_i \leq R\_i \leq N)

출력

QQ개의 줄에 걸쳐 ii번째 날에 소집되는 회의의 개수를 한 줄에 하나씩 출력한다.

예제1

  1. 예제 1

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