11656번: 접미사 배열백준/문제2023. 9. 27. 13:05
Table of Contents
문제 출처 : https://www.acmicpc.net/problem/11656
언어 : Kotlin
문제 설명 :
접미사 배열은 문자열 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의 접미사를 사전순으로 한 줄에 하나씩 출력한다.
제한 사항 :
- 시간 제한 : 1초
- 메모리 제한 : 256MB
입출력 예 :
입력 | 출력 |
baekjoon | aekjoon baekjoon ekjoon joon kjoon n on oon |
풀이 :
import java.io.BufferedWriter
import java.io.OutputStreamWriter
fun main() = with(System.`in`.bufferedReader()) {
val bw = BufferedWriter(OutputStreamWriter(System.out))
val s = readLine()
val sb = StringBuilder()
val arr = mutableListOf<String>()
repeat(s.length) {
for (i in it until s.length) { sb.append(s[i]) }
arr += sb.toString()
sb.clear()
}
arr.sorted().forEach { bw.appendLine(it) }
bw.flush()
bw.close()
}
'백준 > 문제' 카테고리의 다른 글
15649번: N과 M (1) (1) | 2023.10.04 |
---|---|
1439번: 뒤집기 (0) | 2023.09.27 |
17413번: 단어 뒤집기 2 (0) | 2023.09.26 |
10824번: 네 수 (1) | 2023.09.26 |
10825번: 국영수 (0) | 2023.09.25 |
@스몰스테핑 :: 작은 발걸음
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!