๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
CodingTest

[Python]๋ฐฑ์ค€ 5397::ํ‚ค๋กœ๊ฑฐ ํ’€์ด

by ๋„์บ๋ฆฌ๐Ÿฑ 2021. 5. 4.
๋ฐ˜์‘ํ˜•

Solution

๐Ÿ‘‰ ๋‘๊ฐœ์˜ ์Šคํƒ์„ ์ปค์„œ ์ฒ˜๋Ÿผ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค. 

๐Ÿ‘‰ ์ฒซ๋ฒˆ ์งธ ์Šคํƒ์€ ์ปค์„œ ์•ž๋ถ€๋ถ„, ๋‘๋ฒˆ์งธ ์Šคํƒ์€ ์ปค์„œ ๋’ท๋ถ€๋ถ„์ด๋ผ๊ณ  ์นœ๋‹ค๋ฉด, < ์ด๊ฒŒ ๋“ค์–ด ์˜ค๋ฉด ์ฒซ๋ฒˆ์งธ ์Šคํƒ์˜ ๊ฐ’์„ ๋‘๋ฒˆ์งธ ์Šคํƒ์œผ๋กœ ๋„˜๊ธฐ๋ฉด ๋œ๋‹ค. (๋‘๋ฒˆ์งธ ์Šคํƒ์€ ๋‚˜์ค‘์— ์—ญ์ˆœ์œผ๋กœ ๋Œ๋ ค์•ผ ๊ฒฐ๊ณผ ๊ฐ’์ด ๋‚˜์˜จ๋‹ค.์ฒซ๋ฒˆ์งธ ์Šคํƒ์—์„œ ํŒํ•œ ๊ฑฐ๋ฅผ ๋‘๋ฒˆ์งธ์— ์–ดํŽœ๋“œ ํ•˜๋ฉด ๋งจ ๋’ค๋กœ ๋ถ™๊ธฐ ๋•Œ๋ฌธ) ๋งŒ์•ฝ > ์ด๊ฒŒ ๋“ค์–ด์˜ค๋ฉด ๋‘๋ฒˆ์งธ ์Šคํƒ์—์„œ ํŒํ•ด์„œ ์ฒซ๋ฒˆ์งธ ์Šคํƒ์— ์–ดํŽœ๋“œ ํ•˜๋ฉด ๋œ๋‹ค. 

 

 

Tip

๐Ÿ‘‰ ' '.join(list_a.reverse()) ๋Š” ์•ˆ๋˜๊ณ , reverse ๋œ ๊ฑฐ๋ฅผ ๋„ฃ์œผ๋‹ˆ ๋˜๋”๋ผ

 

๐Ÿ‘‰ join ํ•จ์ˆ˜ ์‚ฌ์šฉ๋ฒ•!

' '.join(list)

 

๐Ÿ‘‰reverse ์‚ฌ์šฉ๋ฒ•!

list.reverse( )

 

# 5397 ํ‚ค๋กœ๊ฑฐ

import sys

test = int(input())

for _ in range(test): 

    result = ""
    stk_1 = []
    stk_2 = []
    
    enter = (input()) #1<= 1,000,000
    
    
    for j in range(len(enter)):
        
        if(enter[j]=='<'):
            if(len(stk_1) > 0):
                stk_2.append(stk_1[-1])
                stk_1.pop(-1)
        
        elif(enter[j]=='>'):
            if(len(stk_2) > 0):
                stk_1.append(stk_2[-1])
                stk_2.pop(-1)
        
        elif(enter[j]=='-'):
            if(len(stk_1) > 0):
                stk_1.pop(-1)
        
        else:
            stk_1.append(enter[j])
            
    stk_2.reverse()        
    result = ''.join(stk_1)+ ''.join(stk_2)
    print(result)
๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€