알고리즘
백준 11656 : 접미사 배열 자바
인지용
2021. 9. 20. 17:23
https://www.acmicpc.net/problem/11656
11656번: 접미사 배열
첫째 줄에 문자열 S가 주어진다. S는 알파벳 소문자로만 이루어져 있고, 길이는 1,000보다 작거나 같다.
www.acmicpc.net
생각 :
문제를 보니까
출력하는 문자열 라인수가 문자열만큼이길래
배열을 만들어서 문자열을 잘라서 순서대로 넣고
전에 배운 Arrays.sort 메서드가 문자열도
정렬할 수 있지 않을까 하는 생각으로
배열을 정렬했다
결론:
String 배열을 만들고 문자열 길이를
한개씩 줄여가면서 배열에 담기
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
String n = br.readLine();
String[] arr = new String[n.length()];
for(int i = 0; i < n.length(); i++) {
arr[i] = n.substring(i, n.length());
}
Arrays.sort(arr);
for(String str : arr) {
bw.write(str);
bw.write('\n');
}
bw.flush();
}
}