https://www.acmicpc.net/problem/1141
1141번: 접두사
접두사X 집합이란 집합의 어떤 한 단어가, 다른 단어의 접두어가 되지 않는 집합이다. 예를 들어, {hello}, {hello, goodbye, giant, hi}, 비어있는 집합은 모두 접두사X 집합이다. 반면에, {hello, hell}, {giant,
www.acmicpc.net
문제 파악
문제의 의도는 A라는 문자가 B라는 문자의 접두사가 되는가 파악해서
접두사가 되지 않는 문자들의 개수를 출력하면 된다.
더보기
import java.util.*;
import java.io.*;
public class Main{
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int cnt = 0;
int N = Integer.parseInt(br.readLine());
ArrayList<String> list = new ArrayList<>();
for(int idx = 0; idx<N;idx++)
{
String s = br.readLine();
list.add(s);
}
Collections.sort(list, new Comparator<String>(){
public int compare(String s1, String s2){
return s1.length()-s2.length();
}
});
for(int idx1 = 0; idx1<N;idx1++)
{
boolean check = false;
for(int idx2 = idx1+1;idx2<N;idx2++){
String m = list.get(idx1);
String s = list.get(idx2);
if(s.startsWith(m)){
check = true;
break;
}
}
if(!check){
cnt++;
}
}
System.out.println(cnt);
}
}
'PS' 카테고리의 다른 글
[Programmers] LV2 - 짝지어 제거하기 (0) | 2021.06.30 |
---|---|
[Programmers] LV2 - 영어 끝말잇기 (0) | 2021.06.29 |
[Programmers]LV3 - 길 찾기 게임 (0) | 2021.06.27 |
[Programmers] LV2 - 캐시 (0) | 2021.06.27 |
[Programmers] LV2 - 큰 수 만들기 (0) | 2021.06.26 |