-
[백준, Python] 9093번 : 단어 뒤집기알고리즘 2023. 1. 25. 09:34
https://www.acmicpc.net/problem/9093
9093번: 단어 뒤집기
첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 문장이 하나 주어진다. 단어의 길이는 최대 20, 문장의 길이는 최대 1000이다. 단어와 단어 사이에는
www.acmicpc.net
문제설명
문장이 주어졌을 때, 단어를 모두 뒤집어서 출력하는 프로그램을 작성하시오. 단, 단어의 순서는 바꿀 수 없다. 단어는 영어 알파벳으로만 이루어져 있다.

풀이
간단하게 접근하면 매우 쉬운 문제다. 문자열을 뒤집는 방법에는
1. STACK 자료구조 활용
2. 파이썬에서 제공하는 reversed() 활용
3. for문 활용
이렇게 총 3가지가 있겠지만, 뭔가 이 문제를 접근할 때 슬라이싱을 활용하면 더 간단하게 될 것 같아서 나는 슬라이싱으로 구현했다.
N = int(input()) for i in range(N): arr = list(input().split()) for j in arr: print(j[::-1], end=' ')① list(input().split())으로 입력받은 문자를 띄어쓰기 기준으로 쪼개서 리스트로 저장한다.
② 띄어쓰기 기준으로 쪼갠 리스트를 for문을 돌려 하나하나씩 순회한다.
③ [::-1] 이라는 역순으로 처리해주는 슬라이싱 기법으로 문자열을 뒤집고, print의 끝 값을 띄어쓰기로 구분지어 단어를 구별해준다.
'알고리즘' 카테고리의 다른 글
2609 - 최대공약수와 최소공배수 (0) 2023.03.29 음료수 얼려 먹기 [그래프 탐색] (0) 2023.03.06 문자열에서 숫자만 추출하는 방법(Python) (0) 2023.01.25 [백준, Python] 1110번: 더하기 사이클 (0) 2023.01.22 영어를 알파벳 순서대로 정렬하는 방법 (0) 2022.12.14