알고리즘/백준
[백준] 1251번: 단어 나누기/ 파이썬
홍우진
2022. 9. 4. 22:03
728x90
반응형
문제 링크
https://www.acmicpc.net/problem/1251
1251번: 단어 나누기
알파벳 소문자로 이루어진 단어를 가지고 아래와 같은 과정을 해 보려고 한다. 먼저 단어에서 임의의 두 부분을 골라서 단어를 쪼갠다. 즉, 주어진 단어를 세 개의 더 작은 단어로 나누는 것이다
www.acmicpc.net
풀이 코드
import sys
word = list(map(str, sys.stdin.readline().rstrip("\n")))
res = []
for i in range(1, len(word) - 1):
for j in range(i + 1, len(word)):
first = word[:i]
second = word[i:j]
third = word[j:]
first.reverse()
second.reverse()
third.reverse()
res.append("".join(first + second + third))
print(min(res))
코드 해석
문자열을 입력 받은 뒤 3개로 나누고 뒤집어서 조합하여 각각 리스트에 저장한다.
그 후 사전순으로 가작 작은 단어를 출력한다.
728x90
반응형