자유 인형

n개의 마트료시카 인형에 대해 두 가지 유효한 중첩 상태가 주어질 때, 한 상태를 다른 상태로 바꾸는 데 필요한 최소 이동 횟수를 구한다.

보통6트리그리디DFS아직 제출이 없습니다시간 제한1초메모리 제한512 MB

문제

마트료시카 한 세트는 크기가 커지는 순서대로 1번부터 nn번까지 번호를 붙인 나무 인형 nn개로 이루어진다. 인형은 자기보다 큰 인형 안에 바로 넣을 수 있고, 한 인형 안에 바로 들어가는 인형은 크기와 상관없이 최대 하나다.

인형 aa가 인형 bb 안에 바로 들어 있으면 bbaa의 부모라고 한다. 부모가 없는 인형은 자유롭다고 한다. 모든 인형의 부모를 적으면 세트 전체의 배치가 정해진다.

다음 두 가지 동작을 할 수 있다.

  • 자유로운 인형을, 자유롭고 속이 빈 더 큰 인형 안에 넣는다.
  • 속이 비어 있지 않은 자유로운 인형을 열어서 바로 안에 들어 있는 인형을 꺼낸다.

처음 배치와 목표 배치가 주어진다. 처음 배치를 목표 배치로 바꾸는 최소 동작 횟수를 구하여라.

입력

첫째 줄에 인형의 개수 nn이 주어진다 (1n1000001 \le n \le 100000).

둘째 줄에 처음 배치를 나타내는 정수 nnp1,p2,,pnp_1, p_2, \dots, p_n이 주어진다 (0pkn0 \le p_k \le n). pkp_k는 인형 kk가 자유로우면 0이고, 그렇지 않으면 인형 kk의 부모다.

셋째 줄에 목표 배치를 같은 형식으로 나타내는 정수 nnq1,q2,,qnq_1, q_2, \dots, q_n이 주어진다 (0qkn0 \le q_k \le n).

두 배치는 모두 올바르다. 인형은 항상 자기 부모보다 작고, 부모가 같은 인형은 둘 이상 없다.

출력

최소 동작 횟수를 한 줄에 출력한다.