만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

Reveals

시간 제한1초메모리 제한512 MB

요약
집 안에 있던 사람들과 외부 목격자 명단이 주어질 때, 일곱 가지 우선순위 규칙을 차례로 적용해 범인을 찾습니다.
난이도

쉬움10점 중 2점

유형
구현, 해시맵, 정렬
정답자
아직 제출이 없습니다

문제

흐에에…

누군가가 어둠을 틈타, 시이(swi)의 엄청난 케이크를 먹어버렸다!

시이는 케이크를 좋아하는 사람이다. 그래서 여느 때처럼 근처 가게에서 사 온 굉장히 큰 케이크를 식탁 위에 올려놓고 감상하고 있었다. 그런데 방이 너무 따뜻해서 시이는 잠이 들었고, 깨어나 보니 케이크가 사라져 있었다!

사건이 일어났을 때 집 안에는 시이와 시이를 제외한 NN명의 사람이 있었다. 케이크를 먹은 범인은 사건이 일어났을 때 집 안에 있던 사람 중 한 명이다.

시이는 주변을 수소문해서, 사건이 일어나지 않은 곳에서 사건이 일어났을 때 목격된 사람들의 이름 MM개를 얻었다.

이 사건은 추리 소설의 원칙을 따르므로, 범인을 다음 규칙으로 추리할 수 있다.

  1. 아래 규칙은 우선순위대로 적용한다. 두 개 이상의 규칙이 동시에 범인을 찾아내면, 규칙 번호가 작은 쪽을 따른다.
  2. 동호는 악질이다. 사건 당시에 dongho가 집에 있었다면, 목격담과 관계없이 dongho가 범인이다.
  3. 집에 있던 사람 중 목격담이 없는 사람이 단 한 명이라면, 소거법에 따라 그 사람이 범인이다.
  4. 목격담이 없는 bumin이라는 이름의 사람이 집에 있었다면, 그 사람이 범인이다.
  5. 목격담이 없는 cake라는 이름의 사람이 집에 있었다면, 케이크는 거짓말이므로(The cake is a lie) 그 사람이 범인이다.
  6. 목격담이 없는 lawyer라는 이름의 사람이 집에 있었다면, 변호사는 항상 범인이므로 그 사람이 범인이다.
  7. 이름이 앞선 사람일수록 케이크를 몰래 먹기 쉬우므로, 집에 있던 시이가 아닌 NN명 중 목격담이 없고 사전순으로 이름이 가장 빠른 사람이 범인이다.

케이크가 있는 방에서 잠든 시이는 다른 곳에서 목격되지 않는다.

한 사람의 이름은 유일하며 동명이인은 없다.

한 사람이 여러 번 목격되었을 수 있고, 목격된 사람이 사건이 일어났을 때 집 밖에 있었을 수도 있다.

시이의 케이크를 먹은 범인을 찾아라.

입력

첫 번째 줄에 시이의 케이크가 없어졌다는 메시지가 입력된다. (swi's cake is missing!)

두 번째 줄에 집 안에 있던 시이를 제외한 사람의 수 NN이 주어진다.

그다음 NN개 줄에 시이를 제외한 NN명 각각의 이름이 한 줄에 하나씩 주어진다.

그다음 줄에 목격담의 수 MM이 주어진다.

그다음 MM개 줄에 사건이 일어나지 않은 곳에서 목격된 사람의 이름이 주어진다.

출력

문제의 규칙에 따라, 시이의 케이크를 먹은 범인의 이름을 출력한다.

제한

  • 모든 사람의 이름은 영문 소문자로만 이루어진 1글자 이상 8글자 이하의 문자열이다.
  • 문제에 나온 규칙으로 범인을 유일하게 추측할 수 있다.
  • 0≤N≤10000 \le N \le 1000
  • 0≤M≤100000 \le M \le 10000

예제1

  1. 예제 1

    입력
    swi's cake is missing!
    5
    dongho
    potato
    cake
    bumin
    dhyang
    5
    dongho
    dongho
    dongho
    dongho
    dongho
    
    예상 출력
    dongho