1 λΆ„ μ†Œμš”

πŸ“ [S5_11723] 집합

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

public class Main {
    static StringTokenizer st;
    static int check_res;
    static int num;

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

        // μˆ˜ν–‰ν•΄μ•Όν•  μ—°μ‚°μ˜ 수
        int M = Integer.parseInt(br.readLine());

        int[] arr = new int[21];

        for(int i=0; i<M; i++){
            st = new StringTokenizer(br.readLine(), " ");
            switch (st.nextToken()){
                case "add":
                    int num = Integer.parseInt(st.nextToken());
                    arr[num] = num ;
                    break;
                case "remove":
                    arr[Integer.parseInt(st.nextToken())] = 0;
                    break;
                case "check":
                    int num_2 = Integer.parseInt(st.nextToken());
                    if(arr[num_2]==num_2){
                        check_res = 1;
                    }
                    else{
                        check_res = 0;
                    }
                    sb.append(check_res).append("\n");
                    break;
                case "toggle":
                    int temp = Integer.parseInt(st.nextToken());
                    if(arr[temp] == temp){
                        arr[temp] = 0;
                    }
                    else{
                        arr[temp] = temp;
                    }
                    break;
                case "all":
                    for(int j=1; j<21; j++){
                        arr[j] = j;
                    }
                    break;
                case "empty":
                    for(int j=1;j<21;j++){
                        arr[j]=0;
                    }
                    break;
            }
        }
        System.out.println(sb);
    }
}

πŸ€” λ‚˜μ˜ 생각

이 λ¬Έμ œλŠ” μ–΄λ–»κ²Œ 보면 κ°„λ‹¨ν•˜μ§€λ§Œ μ‹œκ°„ λ³΅μž‘λ„ λ•Œλ¬Έμ— λ§Žμ€ μ‚¬λžŒλ“€μ΄ μ• λ₯Ό λ¨ΉλŠ” λ¬Έμ œμ΄λ‹€.
λ‚˜λŠ” μ–΄λ–»κ²Œ μ–΄λ–»κ²Œ λ°°μ—΄λ‘œ 마무리 ν–ˆμ§€λ§Œ 문제의 μ˜λ„λŠ” λΉ„νŠΈλ§ˆμŠ€ν‚Ήμ„ 톡해 문제λ₯Ό ν‘ΈλŠ” 것이닀.
κ·ΈλŸ¬λ‚˜ 아직.. λΉ„νŠΈλ§ˆμŠ€ν‚Ήμ— λŒ€ν•œ 이해가 μ œλŒ€λ‘œ λ˜μ–΄ μžˆμ§€ μ•Šμ•„μ„œ λ‚˜μ€‘μ— 곡뢀λ₯Ό ν•˜κ³  λ‚˜λ©΄ 진행해보겠닀
κ·ΈλŸ¬λ‚˜ λͺ¨λ‘œκ°€λ„ μ„œμšΈλ§Œ κ°€λ©΄ λœλ‹€κ³  λ°°μ—΄λ‘œλ„ 정해진 μ‹œκ°„μ— μΆ©μ‘±ν•˜μ—¬ ν•΄κ²°ν•΄λƒˆλ‹€ ^^
λ°°μ—΄μ—μ„œμ˜ ν¬μΈνŠΈλŠ” StringBuilder와 StringTokenizer μ˜€λ‹€.