십대로 사는 건 힘들어!

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

문제

해야 할 일 목록은 언제나 존재합니다!

오늘 아침 보호자가 남겨 준 목록은 다음과 같습니다.

  1. 수학 숙제 하기.
  2. 할머니께 전화하기.
  3. 직장에 있는 나(보호자)에게 전화하기.
  4. 친구에게 전화하기.
  5. 개 밥 주기.
  6. 개 산책시키기(밖에 내보내기).
  7. 텔레비전 보기.

(하루 종일 인터넷만 하지 말고 텔레비전도 챙겨 보게 해 주는 보호자라니 다행입니다.)

보호자는 이 일들의 순서에 대해 다음과 같은 제약도 걸어 두었습니다.

  • 텔레비전을 보기 전에 수학 숙제를 먼저 한다.
  • 친구에게 전화하기 전에 수학 숙제를 먼저 한다.
  • 수학 숙제를 하기 전에 할머니께 먼저 전화한다.
  • 친구에게 전화하기 전에 직장에 있는 나에게 먼저 전화한다.
  • 개 밥은 직장에 있는 나에게 전화한 뒤에 준다.

위의 "할 일" 목록은 이제 다음과 같이 축약할 수 있습니다.

1,7
1,4
2,1
3,4
3,5

여기서 x,y는 번호가 x인 일을 번호가 y인 일보다 먼저 해야 함을 뜻합니다.

하루 동안 보호자는 추가 지시를 이메일로 보내옵니다. 원래의 "할 일" 목록과 추가 지시를 함께 사용하여, 일들을 완료할 수 있는 순서대로 출력하는 프로그램을 작성하세요. 만약 모든 일을 완료할 수 없다면, 이 일들을 완료할 방법이 없어 그냥 자러 간다는 내용을 출력해야 합니다.

입력

추가 지시를 나타내는 숫자들이 한 줄에 하나씩 주어지며, 두 숫자가 한 쌍을 이룹니다. 각 쌍의 첫 번째 숫자 x와 두 번째 숫자 y는 번호가 x인 일을 번호가 y인 일보다 먼저 해야 함을 뜻하며, 위의 원래 목록에 추가됩니다. 입력은 숫자 쌍 00으로 끝납니다. 추가 제약은 최대 10개입니다.

출력

일들을 수행해야 하는 순서대로 한 줄에 공백 하나로 구분하여 출력하세요. 모든 일을 완료할 수 없다면 다음을 그대로 출력합니다.

Cannot complete these tasks. Going to bed.

여러 순서가 가능한 경우 다음 규칙으로 순서를 정합니다. 동시에 수행할 수 있는 일이 여러 개라면, 그중 번호가 가장 작은 일을 먼저 수행합니다.