Problem Solving

[백준(BOJ)]12605번 : 단어순서 뒤집기 - Python(파이썬) - (브론즈1, 스택(Stack))

개발자 쿠키 2022. 7. 25. 00:04

https://www.acmicpc.net/problem/12605

 

12605번: 단어순서 뒤집기

스페이스로 띄어쓰기 된 단어들의 리스트가 주어질때, 단어들을 반대 순서로 뒤집어라. 각 라인은 w개의 영단어로 이루어져 있으며, 총 L개의 알파벳을 가진다. 각 행은 알파벳과 스페이스로만

www.acmicpc.net

문제

스페이스로 띄어쓰기 된 단어들의 리스트가 주어질때, 단어들을 반대 순서로 뒤집어라. 각 라인은 w개의 영단어로 이루어져 있으며, 총 L개의 알파벳을 가진다. 각 행은 알파벳과 스페이스로만 이루어져 있다. 단어 사이에는 하나의 스페이스만 들어간다.

입력

첫 행은 N이며, 전체 케이스의 개수이다.

N개의 케이스들이 이어지는데, 각 케이스는 스페이스로 띄어진 단어들이다. 스페이스는 라인의 처음과 끝에는 나타나지 않는다. N과 L은 다음 범위를 가진다.

  • N = 5
  • 1 ≤ L ≤ 25

출력

각 케이스에 대해서, 케이스 번호가 x일때  "Case #x: " 를 출력한 후 그 후에 이어서 단어들을 반대 순서로 출력한다.

예제 입력 1 복사

3
this is a test
foobar
all your base

예제 출력 1 복사

Case #1: test a is this
Case #2: foobar
Case #3: base your all

알고리즘 분류


✔코드

# [백준 12605번] - 단어순서 뒤집기 - (브론즈1, 스택)
import sys
input = sys.stdin.readline

N = int(input())                        # 전체 케이스 개수

for i in range(N):
    L = list(input().split())
    print("Case #%d: "%(i+1), end='')
    print(*L[::-1])

 


✔문제접근

(::-1): 해당 문자열을 뒤집은 결과를 반환

✔문제풀이

#역순으로 출력하는 함수
reverse() : 문자열 리스트를 거꾸로 뒤집음 		 # list만 사용가능
reversed(): 문자열 리스트를 거꾸로 뒤집음 (바로 적용가능)
[::-1]    : 해당 문자열을 뒤집은 결과를 반환