Koala - 5기/기초 알고리즘 스터디
[BOJ/python] 11656번 접미사 배열
ddingmin00
2022. 2. 6. 17:34
https://www.acmicpc.net/problem/11656
11656번: 접미사 배열
첫째 줄에 문자열 S가 주어진다. S는 알파벳 소문자로만 이루어져 있고, 길이는 1,000보다 작거나 같다.
www.acmicpc.net

문제 해석
한 단어를 입력받고 입력받은 단어의 접미사는 앞글자가 하나씩 줄은것이 된다.
이 접미사들을 사전순으로 정렬한 후 출력하는 문제이다.
코드
read = input()
arr = []
for i in range(len(read)):
arr.append(read[i:])
arr = sorted(arr)
print("\n".join(arr))
문제 풀이
read에 단어를 입력받는다.
접미사들을 저장하기 위해 arr 배열을 만들어준다.
앞부분이 하나씩 없어지므로 i가 0부터 1씩 증가하는 for문을 만든 뒤
arr.append(read[i:])를 해주면 문제에서 원하는 접미사들이 저장된다.
그 뒤 sorted() 함수를 사용하여 정렬한 뒤 출력하면 된다.
출력할 땐 join을 사용하여 간단하게 출력할 수 있다.
원문
https://ddingmin00.tistory.com/20
[BOJ/python] 11656번 접미사 배열
https://www.acmicpc.net/problem/11656 11656번: 접미사 배열 첫째 줄에 문자열 S가 주어진다. S는 알파벳 소문자로만 이루어져 있고, 길이는 1,000보다 작거나 같다. www.acmicpc.net 문제 해석 한 단어를 입력..
ddingmin00.tistory.com