Baba is Rabbit
시간 제한1초메모리 제한512 MB
p is q 형태의 명령들이 주어질 때, Baba에게 명령을 한 번 이상 적용해 도달할 수 있는 모든 객체를 사전순으로 출력한다.
문제
원이는 요즘 유행하는 게임을 하고 있다. 이 게임은 is 라는 단어를 이용해 어떤 사물을 다른 사물로 바꿀 수 있다. 규칙은 다음과 같다.
- 게임 시작 시 몇 개의 명령을 설정해놓는다.
- 이 때, 모든 명령의 형태는
p is q의 형태이며, p, q는 사물이다.
- 이 때, 모든 명령의 형태는
- 두 사물 p, q에 대해
p is q라는 명령은 사물 p를 사물 q로 바꾼다.- 이러한 행위를 명령을 적용한다고 부른다.
어떤 사물 p에 대해 적용할 수 있는 명령이 두 가지 이상이면, 그 중 아무거나 하나 골라서 적용할 수 있다. (아무 명령도 적용하지 않을 수도 있다.) 그리고 어떤 사물 p에 명령을 한 번 이상 적용한 결과로 다시 p가 나오는 경우는 없다.
게임 초기에 설정된 명령들이 주어졌을 때, Baba에 명령을 적용하여 어떤 사물로 만들 수 있는지 구해보자.
입력
첫 줄에 전체 명령의 수 N(1 ≤ N ≤ 100,000)이 주어진다.
이후 N개의 줄에 걸쳐 명령이 주어진다. 각 명령은 p is q의 형태로 주어지며, p와 q는 첫 글자가 영문 대문자이고, 나머지 글자는 영문 소문자인 길이 10 이내의 문자열이다.
출력
Baba에 명령을 한 번 이상 적용한 결과로 나올 수 있는 사물을 사전순으로 출력한다. 단, 적용할 수 있는 명령이 없다면, 아무것도 출력하지 않는다.