왕위 계승

아직 제출이 없습니다시간 제한1초메모리 제한128 MB

문제

유토피아의 왕이 자손을 남기지 않고 세상을 떠났다. 왕이 후계자를 지명하지 않았기 때문에 왕실 귀족들이 저마다 왕위를 주장하기 시작했다. 유토피아의 법에는 왕의 계승자가 없을 때, 나라를 세운 건국자와 혈통이 가장 가까운 사람이 나라를 다스린다는 조항이 있다.

건국자와 혈통이 가장 가까운 사람은 건국자의 자손이면서 건국자가 아닌 사람의 피가 가장 적게 섞인 사람이다. 모든 사람은 아버지에게서 혈통의 절반을, 어머니에게서 절반을 물려받는다. 건국자의 자녀는 왕가의 피를 $\frac{1}{2}$ 물려받고, 그 자녀가 왕족이 아닌 사람과 혼인하여 낳은 자녀는 왕가의 피를 $\frac{1}{4}$ 물려받는다. 이렇게 세대가 내려갈수록 건국자에게서 물려받은 혈통의 비율이 정해진다.

왕위를 주장하는 사람들 중에서 건국자와 혈통이 가장 가까운, 즉 왕가의 피를 가장 많이 물려받은 사람을 찾는 프로그램을 작성하시오.

입력

첫째 줄에 두 정수 $N$과 $M$이 주어진다. ($2 \le N, M \le 50$)

둘째 줄에 유토피아를 세운 건국자의 이름이 주어진다.

다음 $N$개의 줄에는 가족 정보가 한 줄에 하나씩 주어진다. 각 줄은 공백으로 구분된 세 개의 이름으로 이루어지며, 첫 번째 이름은 자녀이고 나머지 두 이름은 그 자녀의 두 부모이다.

그다음 $M$개의 줄에는 왕위 계승을 주장하는 사람의 이름이 한 줄에 하나씩 주어진다.

모든 이름은 알파벳 소문자로만 이루어진 길이 1 이상 10 이하의 문자열이다. 건국자가 왕위를 주장하는 경우는 없으며, 건국자가 누군가의 자녀로 등장하는 경우도 없다.

출력

첫째 줄에 건국자와 혈통이 가장 가까운 사람의 이름을 출력한다. 답이 항상 유일한 입력만 주어진다.

이 문제의 가족 관계는 성별과 나이를 고려하지 않고 만들었기 때문에 현실적으로는 말이 되지 않는 경우가 나올 수도 있다. 하지만 모든 자녀의 부모 쌍은 유일하며, 자녀가 다시 자기 부모의 조상이 되는 순환은 없고, 한 사람이 두 번 이상 자녀로 등장하지도 않는다.