대학원생 시철이는 대학원에서도 복전을 한다. 이번엔 무려 생명공학이다!
과제에 짓눌리는 걸 좋아하는 시철이답게, 오늘도 어김없이 세포 배양 과제를 하고 있다.
시철이가 배양하는 세포는 상당히 특이한 성질을 가지고 있다.
불타는 금요일, 시철이는 배양지에 세포 하나를 올려두었다. 다음 주 월요일에 시철이가 연구실로 돌아왔을 땐 모든 세포 분열이 멈춰있는 상태였다. 곧바로 시철이는 이 배양지에 있는 세포들을 관찰했지만, 돌연변이가 너무 많이 생기는 바람에 이 배양지가 본인의 배양지인지 동기의 배양지인지 헷갈리기 시작했다.
과연 배양지에 있는 세포들은 시철이가 올려둔 초기 세포에서 분열이 된 것일까?
첫 번째 줄에 세포 종류의 개수 N가 주어진다. (1≤N≤26)
두 번째 줄에 돌연변이를 나타내는 알파벳 소문자 a_1,a_2,⋯,a_N가 공백 단위로 주어진다. 이것은 i번째 알파벳에 해당하는 세포의 분열 중 돌연변이가 발생해 a_i번째 알파벳에 해당하는 세포가 생길 수 있음을 뜻한다. a_i가 i번째 알파벳일 경우, 해당 종류의 세포는 돌연변이가 발생하지 않는 것을 의미한다. a_i는 a부터 N번째 알파벳 중 하나다.
세 번째 줄에 초기 세포의 종류를 나타내는 알파벳 소문자 K가 주어진다. K는 a부터 N번째 알파벳 중 하나다.
네 번째 줄에 시철이가 관찰한 세포 배열을 나타내는 S가 주어진다. S의 모든 원소는 a부터 N번째 알파벳 소문자 중 하나고, 공백 없이 한 줄에 주어진다. (1≤∣S∣ ≤500)
관찰한 세포 배열이 초기 세포로부터 생겨날 수 있다면 YES를 출력한다.
그렇지 않으면 NO를 출력한다.