반응형
코드
word = input()
ans_list = []
for i in range(1,len(word)-1):
ans = []
for j in range(i+1,len(word)):
ans = ((word[0:i:])[::-1])+((word[i:j:])[::-1])+((word[j::])[::-1])
ans_list.append(ans)
ans_list.sort()
print(ans_list[0])
설명
단어를 3개로 나눌 수 있는 모든 경우의 수를 확인했다.
word[0:i:], word[i:j:], word[j::]로 문자열을 3개로 나누고 [ : :-1]으로 뒤집어 준 후 3개를 하나로 합쳐줬다. 합친 단어는 ans_list에 넣어주었고 for문을 빠져나왔을 때 ans_list를 알파벳 순으로 정렬을 해서 가장 첫 번째 요소를 출력해줬다.
반응형
'알고리즘 > 완전탐색' 카테고리의 다른 글
[백준][Python] 17521번 Byte Coin (0) | 2022.07.22 |
---|---|
[백준][Python] 14912번 숫자 빈도수 (0) | 2022.07.21 |
[백준][Python] 11170번 0의 개수 (0) | 2022.07.20 |
[백준][Python] 2160번 그림 비교 (0) | 2022.07.18 |
[백준][Python] 18512번 점프 점프 (0) | 2022.07.18 |
댓글