백준 9093번 : 단어 뒤집기(python)

2021. 11. 7. 00:12·Algorithm

문제

문장이 주어졌을 때, 단어를 모두 뒤집어서 출력하는 프로그램을 작성하시오. 단, 단어의 순서는 바꿀 수 없다. 단어는 영어 알파벳으로만 이루어져 있다.

입력

첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 문장이 하나 주어진다. 단어의 길이는 최대 20, 문장의 길이는 최대 1000이다. 단어와 단어 사이에는 공백이 하나 있다.

출력

각 테스트 케이스에 대해서, 입력으로 주어진 문장의 단어를 모두 뒤집어 출력한다.

예제 입력 1 복사

2 I am happy today We want to win the first prize

예제 출력 1 복사

I ma yppah yadot eW tnaw ot niw eht tsrif ezirp

코드

import sys
n=int(sys.stdin.readline())
alp=[] #문자를 추가할 스택
for i in range(n): #n번만큼 반복
    alp=list(map(list,input().split())) #한번에 한줄에 입력하기위한 코드
    #이중 리스트와 pop()함수를 이용하여 문제 해결
    for j in alp: #이중 리스트를 돌려줌
        for k in range(len(j)): #이중리스트의 문자열의 길이만큼 pop함수로 뽑아내줘야됌
            print(j.pop(),end='')
        print(end=' ') #띄어쓰기를 위한 코드

코드설명

백준님의 스택 강의속 문제였기때문에 가능하면 스택내용속의 것을 이용하여 풀고 싶었다.

파이썬은 리스트자체가 스택처럼 구현할 수 있기때문에 리스트를 이용하였고, reverse함수를 이용하거나 다른 list를 생성하는 방식도 쓸수 있었지만 띄어쓰기를 기준으로 문장을 잘라 이중리스트로 입력한 후 이중리스트를 pop함수를 통해 문자를 하나씩 출력하여 문제를 해결하였다.

느낀점

- pop함수의 쓰임 이해

- 문제를 해결하며 reverse함수에 대해 제대로 이해

- 스택 개념 이해

728x90

'Algorithm' 카테고리의 다른 글

백준 1874번 : 스택수열(python)  (0) 2021.11.08
백준 9012번 : 괄호 (python)  (0) 2021.11.07
백준 1435번 : 영화감독 숌 (python)  (0) 2021.10.26
백준7568번 : 덩치(python)  (0) 2021.10.26
백준 2798번 : 블랙잭 c언어  (0) 2021.10.24
'Algorithm' 카테고리의 다른 글
  • 백준 1874번 : 스택수열(python)
  • 백준 9012번 : 괄호 (python)
  • 백준 1435번 : 영화감독 숌 (python)
  • 백준7568번 : 덩치(python)
study ticket
study ticket
  • study ticket
    혼자하는 공부
    study ticket
  • 전체
    오늘
    어제
    • 개발 (77)
      • 오류 (1)
      • Spring (13)
      • Java (0)
      • Data structure (6)
      • Algorithm (49)
        • 백준 (17)
        • 프로그래머스 (2)
      • 문제풀면서 알게되는것들 끄적 (2)
      • 머신러닝 (4)
        • sklearn (3)
        • pandas (1)
      • 프로젝트 (0)
        • 핏두 (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    백준1157
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
study ticket
백준 9093번 : 단어 뒤집기(python)
상단으로

티스토리툴바