문제.
문장이 주어졌을 때, 단어를 모두 뒤집어서 출력하는 프로그램을 작성하시오. 단, 단어의 순서는 바꿀 수 없다. 단어는 영어 알파벳으로만 이루어져 있다.
첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 문장이 하나 주어진다. 단어의 길이는 최대 20, 문장의 길이는 최대 1000이다. 단어와 단어 사이에는 공백이 하나 있다.
각 테스트 케이스에 대해서, 입력으로 주어진 문장의 단어를 모두 뒤집어 출력한다.
답:
n = int(input())
for i in range(n):
s = list(input().split())
for j in s:
print(j[::-1], end=' ')
'''전체 설명'''
# a = ['a', 'b', 'c', 'd', 'e']
# 전체를 거꾸로 가져옵니다.
# a[ : : -1 ]
# ['e', 'd', 'c', 'b', 'a']
[::-1]은 뒤부터 거꾸로 가져온다는 뜻이다.
고로 일단 n을 기입하고, 0부터 n까지 문자열을 받고, 쪼갠다. 이후 list로 받아준다. 이 리스트는 s라는 변수에 기입해 준다.
이후 전부 받은 s안에서 (리스트) 뒤부터 출력을 해준다. 그러면 단어는 뒤집어지게 된다.
(리버스 이용해서 코드를 짤 수는 있지만, 자료구조적으로 해석하고 싶었다.)
'백준 (코테)' 카테고리의 다른 글
20. 스택 수열 (1874), 에디터(1406) (0) | 2024.09.06 |
---|---|
19. 괄호 (9012) (0) | 2024.09.05 |
17. 스택(10828) (0) | 2024.09.02 |
16. [12단계] 제목: 브루트 포스 (5~6챕터) (0) | 2024.08.29 |
15. [12단계] 제목: 브루트 포스 (3~4챕터) (2) | 2024.08.28 |