Introfor

[백준] 9093번 단어 뒤집기 본문

Programming_prob/BaekJoon

[백준] 9093번 단어 뒤집기

YongArtist 2020. 9. 13. 21:56
"""
BOJ Stack problem
"""

__author__ = 'hanayong'

stack = []


def push(word):
    global stack

    for _ in range(len(word)):
        stack.append(word.pop())


def pop():
    global stack

    if stack in []:
        return
    else:
        return stack.pop()


def reserve_words():
    global stack
    word_list = []
    for _ in range(len(stack)):
        word_list.append(pop()[::-1])
    print(' '.join(word_list))


if __name__ == '__main__':
    n = int(input())
    for _ in range(n):
        factors = input().split()
        push(factors)
        reserve_words()

스택을 공부하면서 스택 원리로 코드를 작성하고 싶어서 적어봤다.

"""
BOJ Stack problem
"""

__author__ = 'hanayong'


n = int(input())

for _ in range(n):
    strings = list(map(list, input().split()))
    for i in strings:
        print(''.join(i[::-1]), end=' ')

나름 pythonic하게 작성해 보았다. 그런데 여기서 더 간단한 방법이 있었다.

from sys import stdin

n = int(stdin.readline())
reversed_string = [list(map(lambda x: x[::-1], stdin.readline())) for _ in range(n)]

for word in reversed_string:
    print(*reversed_string)

 이렇게 또 배운다.

'Programming_prob > BaekJoon' 카테고리의 다른 글

[백준] 1748번 수 이어 쓰기 1  (0) 2020.09.28
[백준] 10799번 쇠막대기  (0) 2020.09.16
[백준] 10845번 큐  (0) 2020.09.12
[백준] 1406번 에디터  (0) 2020.09.11
[백준]1872번 스택 수열  (0) 2020.09.11
Comments