-
백준 1251 - 단어나누기BOJ-Algorithm 2022. 1. 10. 16:52
https://www.acmicpc.net/problem/1251
1251번: 단어 나누기
알파벳 소문자로 이루어진 단어를 가지고 아래와 같은 과정을 해 보려고 한다. 먼저 단어에서 임의의 두 부분을 골라서 단어를 쪼갠다. 즉, 주어진 단어를 세 개의 더 작은 단어로 나누는 것이다
www.acmicpc.net
word = input() arr = [] for i in range(1,len(word)-1): for j in range(i+1,len(word)): split_1 = word[:i] split_2 = word[i:j] split_3 = word[j:] arr.append(split_1[::-1]+split_2[::-1]+split_3[::-1]) arr.sort() print(arr[0])
단어를 입력받은 뒤, 포인터를 두 개 만들어서 첫 포인터는 단어 맨 처음부터 단어 맨 마지막 전 단어까지 가게 하고, 두 번째 포인터는 첫 포인터부터 단어 맨 마지막까지 이동할 수 있게 한다.
이렇게 만들어진 단어들을 문제에서 원하는 것처럼 뒤집은 뒤 각각의 단어를 다 합쳐주고, 이를 배열에 넣어 sort한 뒤 가장 앞에 나오는 [0]번째 단어를 출력한다.
'BOJ-Algorithm' 카테고리의 다른 글
백준 6603 - 로또 (0) 2022.01.10 백준 1978 - 소수 찾기 (0) 2022.01.10 백준 1735 - 분수 합 (0) 2022.01.09 백준 2609 - 최대공약수와 최소공배수 (0) 2022.01.09 백준 1436 - 영화감독 숌 (0) 2022.01.09