[백준]9093 - 단어 뒤집기
💡문제 분석 요약
-- 문제 --
입력 : T( 테스트 케이스의 개수)
- 문장이 주어졌을 때, 단어를 모두 뒤집어서 출력하는 프로그램을 작성하시오. 단, 단어의 순서는 바꿀 수 없다. 단어는 영어 알파벳으로만 이루어져 있다.
💡알고리즘 설계
input을 통해 T 입력받는다.
문장을 공백을 기준으로 나눈 후 리스트로 만든다.
결과 리스트를 만든다.
단어 리스트에서 각 요소를 가져온 후에 반대로 뒤집은 후 결과 리스트에 넣어준다.
결과 리스트 요소들을 공백으로 이어준다.
💡코드
import sys
T = int(input())
for i in range(T):
words=sys.stdin.readline().split( )
result=[]
for word in words:
result.append(word[::-1])
sentence=" ".join(result)
💡시간복잡도
O(1)
💡틀린 이유
굳이 result리스트를 만들어서 넣어주는 작업을 함
💡틀린 부분 수정 or 다른 풀이
import sys
T = int(input())
for i in range(T):
words=sys.stdin.readline().split( )
for word in words:
print(word[::-1], end=' ')
💡느낀점 or 기억 할 정보
처음 코테를 접하다보니 접근하는데 어려움을 느낌. -> 문제 많이 접해보기.
개념만 공부하지 말고 기본 구현한 코드 많이 접해보기.
sys.stdin.readline.split()으로 나눈 후 리스트로 담아주기.
[start:stop:step] : 슬라이스를 시작할 인덱스, 슬라이스를 끝낼 인덱스(미포함), 각 인덱스 사이의 간격(양수이면 정방향, 음수이면 역방향