Problem H
Software Bugs
Recently, there appeared a promising open-source initiative called the Bug Preprocessor. The preprocessor is a program able to find all bugs in your source code and mark them, so they are relatively easy to remove. Your task is to write a program that will remove all marked bugs from the preprocessed source code.
Input
The input contains at most $250$ test cases. Each test case starts with a line containing one integer number $T$ ($0\le T\le 100\, 000$), one space and a string $B$ used by the preprocessor to mark all bugs. The next $T$ lines then contain the preprocessed source code. All bugs are represented by a case-sensitive string $B$.
Each line of the input will be between $0$ and $2\, 000\, 000$ characters long. The bug marker $B$ consists of at least $1$ and at most $1\, 000$ uppercase letters (A through Z). There will be at most $10\, 000\, 000$ characters in each test case.
Output
Your program must remove all of the bugs and produce the same result as if the first occurrence of $B$ on each line was removed repeatedly, until there is no other existing occurrence of $B$. Nothing else may be removed, not even spaces.
Sample Input 1 | Sample Output 1 |
---|---|
7 BUG print "No bugs here..." void hello() { BUGBUG printfBBUGUG("Hello, world!\n"); } 1 ERR wriERRERRtelERERRRn("Hello E-R-R"); |
print "No bugs here..." void hello() { printf("Hello, world!\n"); } writeln("Hello E-R-R"); |