11656번: 접미사 배열
첫째 줄에 문자열 S가 주어진다. S는 알파벳 소문자로만 이루어져 있고, 길이는 1,000보다 작거나 같다.
www.acmicpc.net
baekjoon의 접미사는 baekjoon, aekjoon, ekjoon, kjoon, joon, oon, on, n 으로 총 8가지가 있고, 이를 사전순으로 정렬하면, aekjoon, baekjoon, ekjoon, joon, kjoon, n, on, oon이 된다.
얘를 사전순으로.
1. 인덱싱으로 잘라서 배열에 넣은 다음 (ArrayList)활용
2. sort하면 끝날거같다.
3. 부분 문자열 >> 웬만하면 자바의 편한 substring 메소드를 활용하자
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
String str = br.readLine();
ArrayList<String> al = new ArrayList<String>();
for(int i=0 ; i<str.length(); i++) {
al.add(str.substring(i,str.length()));
}
Collections.sort(al);
for(String x : al) {
sb.append(x).append('\n');
}
System.out.println(sb);
}
}
'Algorithm_PS' 카테고리의 다른 글
6588. <골드바흐의 추측> (1) | 2024.02.05 |
---|---|
1929. <소수 구하기> (1) | 2024.02.05 |
11655. <ROT13> (0) | 2024.02.05 |
10809. <알파벳 찾기> (0) | 2024.02.05 |
1918. <후위 표기식> (1) | 2024.01.29 |