족보
시간 제한2초메모리 제한512 MB
두 가계도가 같은 원본 가계도에서 부모와 자식을 합치는 방식으로 만들어질 수 있는지 판별합니다.
문제
김 박사는 고대 아마존 왕국 유적지를 탐험하다가 여왕 족보 두 개를 발견하였다. 각 족보에는 최초의 여왕 1명과 그 여왕의 여자 후손들 간의 부모-자식 관계가 나무 형태로 기록되어 있다. 예를 들어 그림 1에서 C는 최초의 여왕이며, F와 D는 C의 자식이다. 한 사람의 자식들 사이에는 순서를 구별하지 않는다.

그림 1
두 족보가 발견되었을 때, 다음과 같이 정의되는 단위훼손이 0번 이상 발생했다는 것을 알았다.
단위훼손: 부모 P와 P의 자식 Q가 한 사람으로 합쳐진다. 두 사람의 모든 자식(Q 제외)은 합쳐진 한 사람의 자식이 된다.
예를 들어 그림 2에서 A와 F가 합쳐지는 단위훼손이 일어나면 그림 3과 같이 바뀐다. 이어서 그림 3에서 B와 D가 합쳐지는 단위훼손(그림 4)이 일어나면 그림 5와 같이 바뀐다.
그림 5에서 E와 G가 합쳐지는 단위훼손(그림 6)이 일어나면 그림 7과 같이 된다.
다행히도 족보에서 자식이 없는 사람(그림에서 숫자 이름에 해당)이 포함된 단위훼손은 발생하지 않았다. 자식이 없는 사람은 모두 이름이 족보에 적혀 있고, 이름은 서로 다르다. 하지만 자식이 있는 사람(그림에서 알파벳 이름에 해당)은 이름이 하나도 남아 있지 않다. 따라서 발견된 족보의 형태는 그림 8과 같다.

그림 8
같은 원본에서 단위훼손이 일어나는 방법에 따라 여러 가지 결과가 나올 수 있다는 것을 짐작할 수 있다. 하지만 그림 9의 두 족보는 같은 원본에서 만들 수 없는 예이다.

그림 9
입력으로 주어진 두 족보가 같은 원본에서 0번 이상의 단위훼손을 거쳐 만들어질 수 있는지 판단하는 프로그램을 작성하라. 입력으로 주어진 두 족보 S와 T에서 자식이 없는 사람들의 이름 집합은 같다. 즉, S에서 자식이 없는 사람들의 이름으로 집합을 만들고 T에서도 같은 방식으로 집합을 만들면 두 집합은 동일하다.
입력
표준 입력으로 다음 정보가 주어진다. 첫 번째 줄에는 첫 번째 족보의 사람 수 , 두 번째 족보의 사람 수 , 각 족보에서 자식이 없는 사람의 수 가 주어진다. 첫 번째 족보의 사람들은 1부터 까지 번호가 붙어 있고, 두 번째 족보의 사람들은 1부터 까지 번호가 붙어 있다. 두 족보 모두 1번부터 번까지의 사람은 자식이 없다. 또한 두 족보에서 번호가 같은 1번부터 번까지의 사람은 이름이 같다.
다음 줄에는 첫 번째 족보에서 각 사람의 부모 번호가 사람 번호 순서대로 주어진다. 부모가 없으면 0이 주어진다. 그다음 줄에는 두 번째 족보의 부모 번호가 같은 방식으로 주어진다.
출력
두 족보가 같은 원본에서 만들어질 수 있으면 YES를, 그렇지 않으면 NO를 영어 대문자로 출력한다.
제한
모든 서브태스크에서 이고 이다.





