아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

정화

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

요약
금지어들이 P에서 더 이상 발견되지 않을 때까지, 가장 먼저 끝나는 위치의 가장 짧은 금지어를 지우고 남은 문자열을 출력한다.
난이도

어려움10점 중 9점

유형
문자열, 트라이, 문자열 매칭, 스택
정답자
아직 제출이 없습니다

문제

방 안(문자열 PP)에 흩어져 있는 잡동사니들(금지어 목록 NiN_i)을 모두 치워야 한다.

문자열 PP에서 문자열 NiN_i의 모든 등장을 제거하는 프로그램을 작성하라. 더 정확히 말하면, PP가 어떤 NiN_i를 부분 문자열로 포함하는 동안 다음을 반복한다. 어떤 NiN_i를 포함하는 PP의 접두사 중 가장 짧은 것을 고른 뒤, 그 접두사가 포함하는 NiN_i 중 가장 짧은 것을 삭제한다.

입력

첫째 줄에 문자열 PP가 주어진다. PP는 숫자와 영어 대소문자로만 이루어지며, 길이는 최대 10510^5이다. 이후 각 줄에는 정확히 하나의 문자열 NiN_i가 주어진다. NiN_i 역시 숫자와 영어 대소문자로만 이루어지며, 모든 NiN_i의 길이의 합도 최대 10510^5이다.

출력

모든 NiN_i를 제거한 뒤 남은 PP를 한 줄에 출력한다. 남은 PP의 길이는 항상 1 이상임이 보장된다.

예제2

  1. 예제 1

    입력
    Huffleklek
    flek
    
    예상 출력
    Hu
    
  2. 예제 2

    입력
    0001
    00
    000
    
    예상 출력
    01