n개의 마트료시카 인형에 대해 두 가지 유효한 중첩 상태가 주어질 때, 한 상태를 다른 상태로 바꾸는 데 필요한 최소 이동 횟수를 구한다.
마트료시카 한 세트는 크기가 커지는 순서대로 1번부터 nnn번까지 번호를 붙인 나무 인형 nnn개로 이루어진다. 인형은 자기보다 큰 인형 안에 바로 넣을 수 있고, 한 인형 안에 바로 들어가는 인형은 크기와 상관없이 최대 하나다.
인형 aaa가 인형 bbb 안에 바로 들어 있으면 bbb를 aaa의 부모라고 한다. 부모가 없는 인형은 자유롭다고 한다. 모든 인형의 부모를 적으면 세트 전체의 배치가 정해진다.
다음 두 가지 동작을 할 수 있다.
처음 배치와 목표 배치가 주어진다. 처음 배치를 목표 배치로 바꾸는 최소 동작 횟수를 구하여라.
첫째 줄에 인형의 개수 nnn이 주어진다 (1≤n≤1000001 \le n \le 1000001≤n≤100000).
둘째 줄에 처음 배치를 나타내는 정수 nnn개 p1,p2,…,pnp_1, p_2, \dots, p_np1,p2,…,pn이 주어진다 (0≤pk≤n0 \le p_k \le n0≤pk≤n). pkp_kpk는 인형 kkk가 자유로우면 0이고, 그렇지 않으면 인형 kkk의 부모다.
셋째 줄에 목표 배치를 같은 형식으로 나타내는 정수 nnn개 q1,q2,…,qnq_1, q_2, \dots, q_nq1,q2,…,qn이 주어진다 (0≤qk≤n0 \le q_k \le n0≤qk≤n).
두 배치는 모두 올바르다. 인형은 항상 자기 부모보다 작고, 부모가 같은 인형은 둘 이상 없다.
최소 동작 횟수를 한 줄에 출력한다.