적대적 인수 이후의 회사 생활
시간 제한0.5초메모리 제한1024 MB
같은 n명의 직원에 대한 두 개의 루트 트리가 주어질 때, 각 직원마다 두 트리 모두에서 자신의 후손인 사람 수를 센다.
문제
JanuszPol은 오랜 전통이 있는 폴란드 기업이다. 그런데 최근 자금 사정이 크게 나빠져 결국 외국 경쟁사에 인수되었다. 새 이사회는 회사 조직을 처음부터 다시 짜기로 했다. 지금까지 조직은 전형적인 트리 구조였다.
- 상사가 없는 대표이사가 정확히 한 명 있다.
- 나머지 직원은 모두 직속 상사가 정확히 한 명이고, 순환하는 관계는 없다.
트리에서 직원 아래에 있는 직원 를 의 부하라고 한다. 즉 에서 직속 상사를 따라 계속 올라가면 에 도달하는 경우다.
인수 이후에도 회사는 같은 사람을 그대로 고용하고 조직도 트리로 유지하지만, 모든 직원이 다른 자리를 받기 때문에 트리 모양은 완전히 달라질 수 있다. 다만 대표이사는 자리를 그대로 지킨다. 지금은 아무도 남에게 지시를 내리려 하지 않는다. 당장 내일이라도 부하가 상사가 될 수 있기 때문이다.
인수 전과 인수 후의 트리가 주어진다. 각 직원 마다 인수 전에도 의 부하였고 인수 후에도 의 부하로 남는 사람이 몇 명인지 구하여라.
입력
첫째 줄에 직원 수 ()이 주어진다. 직원의 번호는 번부터 번까지이고, 번이 대표이사다. 둘째 줄에는 인수 전 조직 구조를 나타내는 개의 수 이 주어진다. 는 번 직원의 상사 번호다. 셋째 줄에도 개의 수 이 주어지며, 는 인수 후 번 직원의 상사 번호다. 두 구조 모두 번을 루트로 하는 올바른 트리를 이룬다.
출력
한 줄에 개의 수를 공백으로 구분해 출력한다. 번째 수는 두 트리에서 동시에 번 직원의 부하인 사람의 수다.