알고리즘

백준 1141번 접두사 (JAVA)

박카스마시며코딩 2023. 11. 26. 20:13

https://www.acmicpc.net/problem/1141

 

1141번: 접두사

접두사X 집합이란 집합의 어떤 한 단어가, 다른 단어의 접두어가 되지 않는 집합이다. 예를 들어, {hello}, {hello, goodbye, giant, hi}, 비어있는 집합은 모두 접두사X 집합이다. 하지만, {hello, hell}, {giant,

www.acmicpc.net

 

저는 구현을 통해 문제를 풀었습니다.

indexOf를 통해 해당 문자열이 첫번째로 나오는지를 확인하여 문제를 풀었습니다.

 

package BOJ.etc;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.Arrays;

public class BOJ_1141 {
    private static final int NOT_FOUND = -1;
    public static void main(String[] args) throws Exception {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int n = Integer.parseInt(br.readLine());
        String[] str = new String[n];
        for(int i = 0 ; i < n ; i++){
            str[i] = br.readLine();
        }
        int result = 0;
        Arrays.sort(str);
        for(int i = 0 ; i < n ; i++){
            boolean flag = true;
            for(int j = i+1 ;j < n ; j++){
                if(str[j].indexOf(str[i]) == 0){
                    flag = false;
                    break;
                }
            }
            if(flag){
                result++;
            }
        }
        System.out.println(result);
    }

}

'알고리즘' 카테고리의 다른 글

백준 2343번 기타 레슨 (JAVA)  (0) 2023.11.28
백준 3273번 두 수의 합 (JAVA)  (2) 2023.11.27
백준 12100번 2048 (JAVA)  (1) 2023.11.25
백준 14503번 로봇 청소기 (JAVA)  (0) 2023.11.24
백준 3190번 뱀 (JAVA)  (0) 2023.11.23