문제
문장이 주어졌을 때, 단어를 모두 뒤집어서 출력하는 프로그램을 작성하시오. 단, 단어의 순서는 바꿀 수 없다. 단어는 영어 알파벳으로만 이루어져 있다.
입력
첫째 줄에 테스트 케이스의 개수 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())
totalStr = ''
for i in range(n):
command = sys.stdin.readline().split()
tempObj = ''
for cc in command:
reversed_str = cc[::-1]
tempObj += reversed_str + ' '
totalStr += tempObj + '\n'
print(totalStr)
#############################################################
문자열 뒤집기, 문자열 거꾸로 출력 개념
slice를 이용한 방법
slice를 이용하면 매우 쉽게 String을 뒤집을 수 있습니다. slice에서 각각의 항목은 [start:stop:step]를 의미합니다. string[::-1]처럼 반대 방향으로 리스트의 데이터를 자를 수 있습니다.
string = 'Hello, World!'
reversed_str = string[::-1]
print(f'Original String: {string}')
print(f'Reversed String: {reversed_str}')
reversed()를 이용한 방법
reversed()는 반대방향으로 순회하는 iterator를 리턴합니다. join()으로 리턴된 iterator의 데이터를 하나의 string으로 만들면, 뒤집어진 문자열을 만들 수 있습니다.
string = 'Hello, World!'
reversed_str = "".join(reversed(string))
print(f'Original String: {string}')
print(f'Reversed String: {reversed_str}')
'CS > 알고리즘_문제풀이(파이썬)' 카테고리의 다른 글
GCD LCM (0) | 2021.05.10 |
---|---|
상자 꾸미기 (0) | 2021.05.10 |
offset (0) | 2021.05.10 |
백준 - 스택 수열 #1874 (0) | 2021.03.30 |
백준 - 스택 #10828 (0) | 2021.03.29 |