반응형
💡문제 분석 요약
- 문장이 주어졌을 때 띄어쓰기를 기준으로, 단어별로 거꾸로 출력해본다.
💡알고리즘 설계
- 각 단어별로 reverse 함수같은 것이 있다면 쓸 수 있어보인다.
- 그게 아니라면 어제 했던 것 처럼, deque을 사용하고 해당 단어의 길이만큼 첫번째원소 pop 후 맨 뒤에 append를 반복해도 될 듯 하다.
💡코드
for _ in range(int(input())):
lst = input().split()
for i in range(len(lst)):
lst[i] = lst[i][::-1] # 각 원소별 순서 뒤집기
print(lst[i], end=' ')
💡시간복잡도
- 문장의 길이만큼만 반복되므로 O(N)이고, 최대 문장 길이가 1000이므로 문제가 없을 것으로 보인다.
💡 틀린 이유
- lst[i]에 대해서 뒤집어야하는데 lst에 대해서 뒤집느라 처음에 잠시 오류가 있었다.
- reversed sort 하면 될 줄 알고 했다가, 알파벳 사전 순서대로 뒤집어져서 오류가 있었다.
💡 틀린 부분 수정 or 다른 풀이
- lst[i]에 대해서 접근하기 = 각 단어별로 접근해 뒤집기
- deque를 이용해서 각 단어에 대해서 popleft & append를 해도 풀 수 있을 것 같다. 주말중으로 추가해보자.
💡 느낀점 or 기억할정보
- 원소별 순서 뒤집기는 lst[::-1]
- 문자에 대해서 sort를 하면 알파벳 순서대로 정렬된다.
반응형
'알고리즘 > 코테 스터디 (2024)' 카테고리의 다른 글
1260 DFS와 BFS (0) | 2024.07.15 |
---|---|
Programmers 주식가격 (0) | 2024.07.14 |
1966 프린터 큐, Programmers 프로세스 (0) | 2024.07.12 |
9012 괄호 (0) | 2024.07.11 |
Programmers 다리를 지나는 트럭 (0) | 2024.07.10 |