ํ‹ฐ์Šคํ† ๋ฆฌ ๋ทฐ

728x90
๋ฐ˜์‘ํ˜•

๋ฌธ์ œ

 

9935๋ฒˆ: ๋ฌธ์ž์—ด ํญ๋ฐœ

์ฒซ์งธ ์ค„์— ๋ฌธ์ž์—ด์ด ์ฃผ์–ด์ง„๋‹ค. ๋ฌธ์ž์—ด์˜ ๊ธธ์ด๋Š” 1๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™๊ณ , 1,000,000๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™๋‹ค. ๋‘˜์งธ ์ค„์— ํญ๋ฐœ ๋ฌธ์ž์—ด์ด ์ฃผ์–ด์ง„๋‹ค. ๊ธธ์ด๋Š” 1๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™๊ณ , 36๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™๋‹ค. ๋‘ ๋ฌธ์ž์—ด์€ ๋ชจ๏ฟฝ

www.acmicpc.net

 

๋ฌธ์ œ ํ’€์ด

 ๋ฌธ์ž์—ด์ด ์ฃผ์–ด์งˆ ๋•Œ, ํญ๋ฐœ ๋ฌธ์ž์—ด๊ณผ ์ผ์น˜ํ•˜๋Š” ๋ถ€๋ถ„์ด ์žˆ๋‹ค๋ฉด ์ œ๊ฑฐ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค. ๋ฌธ์ž์—ด๊ณผ ํญ๋ฐœ ๋ฌธ์ž์—ด์ด ์ผ์น˜ํ•˜๋Š” ๋ชจ๋“  ๋ถ€๋ถ„์„ ์ œ๊ฑฐํ•˜๊ณ , ๋‚จ์€ ๋ฌธ์ž์—ด์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค. ๋งŒ์•ฝ, ๋‚จ์€ ๋ฌธ์ž์—ด์ด ์—†๋‹ค๋ฉด FRULA๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

 

 ์ด ๋ฌธ์ œ๋Š” ์ „ํ˜•์ ์ธ `stack`๋ฌธ์ œ๋กœ `stack`์— ๋ฌธ์ž์—ด์„ ํ•˜๋‚˜์”ฉ ์ถ”๊ฐ€ํ•˜๋ฉด์„œ, ํญ๋ฐœ ๋ฌธ์ž์—ด๊ณผ ๋น„๊ตํ•˜์—ฌ ์ œ๊ฑฐ ๊ฐ€๋Šฅํ•œ์ง€ ํŒŒ์•… ํ›„์— ์ œ๊ฑฐํ•˜๋ฉด ๋œ๋‹ค.

 

์ฝ”๋“œ

from sys import stdin


def solve():
    stack = []

    for word in string:
        stack.append(word)
        
        if len(stack) >= len_bomb:
            if stack[-len_bomb:] == bomb_string:
                for _ in range(len_bomb):
                    stack.pop()
    return stack


if __name__ == '__main__':
    string = list(stdin.readline().rstrip())
    bomb_string = list(stdin.readline().rstrip())
    len_bomb = len(bomb_string)
    res = solve()
    print(''.join(map(str, res)) if res else "FRULA")
728x90
๋ฐ˜์‘ํ˜•
๋Œ“๊ธ€
๊ธ€ ๋ณด๊ด€ํ•จ
์ตœ๊ทผ์— ์˜ฌ๋ผ์˜จ ๊ธ€
์ตœ๊ทผ์— ๋‹ฌ๋ฆฐ ๋Œ“๊ธ€