OJ
[BOJ] 11656 접미사 배열 (JAVA)
P3PP4
2023. 2. 5. 10:00
https://www.acmicpc.net/problem/11656
11656번: 접미사 배열
첫째 줄에 문자열 S가 주어진다. S는 알파벳 소문자로만 이루어져 있고, 길이는 1,000보다 작거나 같다.
www.acmicpc.net
배열로 정렬해도 되고 PQ를 이용해도 됩니다.
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.PriorityQueue;
public class Main {
static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
static StringBuilder sb = new StringBuilder();
public static void main(String[] args) throws Exception {
String str = br.readLine();
PriorityQueue<String> pq = new PriorityQueue<>((o1, o2) -> {
return o1.compareTo(o2);
});
for (int i = 0; i < str.length(); i++) {
pq.offer(str.substring(i, str.length()));
}
while (!pq.isEmpty()) {
sb.append(pq.poll()).append("\n");
}
System.out.print(sb.toString());
}
}