Home (Python)(백준_17413) 단어 뒤집기 2
Post
Cancel

(Python)(백준_17413) 단어 뒤집기 2

17413번: 단어 뒤집기 2

풀이


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# <, > 안에 있는 문자열은 그대로 출력하고, 그 밖에 있는 문자들을 스택에 담는다. 공백이 있을 경우 스택에 담았던 문자열을 뒤집어 출력한다.
# 연속하는 두 단어는 공백 하나로 구분함 -> 공백이 나오면 현재 스택에 있는 건 단어
# 태그와 단어 사이에는 공백이 없음 -> 태그가 시작되면 현재 스택에 있는 건 단어 

ans = ""
tag = False
stack = ""
for i in input():
    if i == "<":
        tag = True
        ans += stack[::-1]
        stack = ""
        ans += i
        continue

    elif i == ">":
        tag = False
        ans += i
        continue

    elif i == " ":
        ans += stack[::-1] + " "
        stack = ""
        continue
        
    if tag:
        ans += i
    else:
        stack += i

print(ans + stack[::-1])
This post is licensed under CC BY 4.0 by the author.