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
'Koala - 5기 > 기초 알고리즘 스터디' 카테고리의 다른 글
<4주차> [BOJ / C++] 11880번 - 개미 (0) | 2022.02.06 |
---|---|
[백준/python] 10825: 국영수 (0) | 2022.02.06 |
[백준 / python] 5789번 한다 안한다 (1) | 2022.02.06 |
[백준|13732] Falling apples (2) | 2022.02.05 |
[백준/c++] 5218번 알파벳 거리 (2) | 2022.02.04 |