반응형
문제 설명
접미사 배열은 문자열 S의 모든 접미사를 사전순으로 정렬해 놓은 배열이다.
baekjoon의 접미사는 baekjoon, aekjoon, ekjoon, kjoon, joon, oon, on, n 으로 총 8가지가 있고, 이를 사전순으로 정렬하면, aekjoon, baekjoon, ekjoon, joon, kjoon, n, on, oon이 된다.
문자열 S가 주어졌을 때, 모든 접미사를 사전순으로 정렬한 다음 출력하는 프로그램을 작성하시오.
입력
첫째 줄에 문자열 S가 주어진다. S는 알파벳 소문자로만 이루어져 있고, 길이는 1,000보다 작거나 같다.
출력
첫째 줄부터 S의 접미사를 사전순으로 한 줄에 하나씩 출력한다.
예제 입출력
baekjoon | aekjoon baekjoon ekjoon joon kjoon n on oon |
코드 및 설명
s = input()
answer = []
for i in range(len(s)):
answer.append(s[i:len(s)])
for val in sorted(answer):
print(val)
이 문제는 문자열을 입력받은 후 첫번째 글자부터 하나씩 빼면서 단어를 만들어간 후 사전순으로 정렬하여 프린트하면
되는 문제이다.
s[i:len(s)] 첫번째 문자부터 마지막까지, 두번째 문자부터 마지막까지 반복한다.
그 후 for문을 돌릴떄 sorted한 데이터로 돌리고 출력해주면 정답이 나온다.
반응형
'삽집하는 개발들 > 알고리즘' 카테고리의 다른 글
[98일차] 최소공배수 - 백준 - 1934(python - 정수론, 유클리드 호제법) (18) | 2023.12.17 |
---|---|
[98일차] 최대공약수와 최소공배수 - 백준 - 2609(python - 정수론, 유클리드 호제) (0) | 2023.12.17 |
[97일차] ROT13 - 백준 - 11655(python - 문자열) (4) | 2023.12.16 |
[97일차] 주식가격 - 프로그래머스 - 42584(python - 스택/큐) (1) | 2023.12.16 |
[96일차] 문자열 분석 - 백준 - 10820(python - 문자열) (3) | 2023.12.15 |