Q 2789 유학 금지

💡 문제 요약 및 분석

정부는 인터넷 검열을 통해 해외로 나가는 이메일의 각 단어 중에서 CAMBRIDGE 에 포함된 알파벳을 모두 삭제하기로 했다. 예를 들어, 이메일에 LOVA 라는 단어가 있다면 A 가 검열되어 LOV 만 전송이 되는 것이다. 어떤 단어가 주어졌을 때, 검열을 거친 후에는 어떤 단어가 되는지 구하자. (3글자 <= 단어 <= 100글자)

💡 알고리즘 설계

  1. 문자열 두 개를 완전 탐색으로 비교해야 한다. 입력되는 문자열 String email 과 검열 문자열 String univ 가 있다.

  2. for문으로 email 문자열의 길이만큼 반복한다. 그리고 CAMBRIDGE 문자열의 char를 하나씩 비교한다.

  3. char 가 불일치하면 builder 에 추가하고, 일치하면 추가하지 않는다.

  4. builder 를 출력한다.

💡 코드

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

public class Main {

    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder builder = new StringBuilder();

        String email = br.readLine();
        String univ = "CAMBRIDGE";

        for (int i = 0; i < email.length(); i++) {
            char temp = email.charAt(i);
            int count = 0;
            for (int j = 0; j < univ.length(); j++) {
                char c = univ.charAt(j);
                if (temp == c) {
                    count++;
                    break;
                }
            }
            if (count == 0) {
                builder.append(temp);
            }
        }

        System.out.println(builder);
    }

}

💡 시간 복잡도, 공간 복잡도

시간 복잡도공간 복잡도
O(1)O(1)

문자열 제한이 최대 100 이므로 시간, 공간 복잡도는 상수 1 이다.