알고리즘 공부/백준
백준 9093번 단어 뒤집기 파이썬
당장하자
2022. 5. 4. 21:28
내 코드
단어를 split()으로 나눠서 각각 단어를 reverse하는 방법으로 구현했다.
from sys import stdin
def reverseStr(inp_str):
li_str = list(inp_str)
li_str.reverse()
reverse_str = ''.join(str(s) for s in li_str)
return reverse_str
N = int(stdin.readline())
for line in stdin:
word = line.split()
for i in range(len(word)):
word[i] = reverseStr(word[i])
reverse_line = ' '.join(w for w in word)
print(reverse_line)
백준 모범답안
# kij971202님의 풀이입니다.
import sys
for i in range(int(sys.stdin.readline())):
# [::-1] 이걸로 입력한 단어로 reverse
# .split()으로 공백으로 구분하여 list로 쪼갬
word = sys.stdin.readline()[::-1].split() # ['yadot', 'yppah', 'ma', 'I'], ['ezirp', 'tsrif', 'eht', 'niw', 'ot', 'tnaw', 'eW']
word.reverse() # ['I', 'ma', 'yppah', 'yadot'] , ['eW', 'tnaw', 'ot', 'niw', 'eht', 'tsrif', 'ezirp']
# " ".join(list) 로 단어들을 이어 붙임
print( ' '.join(word)) # I ma yppah yadot , eW tnaw ot niw eht tsrif ezirp
새롭게 알게 된 점
[::-1] 으로 문자열을 뒤집을 수 있다.