[백준 / java] 11723 : 집합

chaen-ing·2024년 4월 7일
0

1일1백준

목록 보기
8/18

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

package boj11723;

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));

        int M = Integer.parseInt(br.readLine());
        int [] arr = new int[21];   // 0번 인덱스 사용X

        while(M-->0){
            StringTokenizer st = new StringTokenizer(br.readLine());
            String method = st.nextToken();

            if(method.equals("add")){
                arr[Integer.parseInt(st.nextToken())] = 1;
            }else if(method.equals("remove")){
                arr[Integer.parseInt(st.nextToken())] = 0;
            }else if(method.equals("check")){
                bw.write(String.valueOf(arr[Integer.parseInt(st.nextToken())]));
                bw.newLine();
            }else if(method.equals("toggle")){
                int i = Integer.parseInt(st.nextToken());
                if(arr[i] == 1){
                    arr[i] = 0;
                }else{
                    arr[i] = 1;
                }
            }else if(method.equals("all")){
                for(int i = 1; i < arr.length; i++){
                    arr[i] = 1;
                }
            }else if(method.equals("empty")){
                for(int i = 1; i < arr.length; i++){
                    arr[i] = 0;
                }
            }
        }
        bw.flush();
    }
}

20칸짜리 배열 만들고 0,1로 구분하는 방식으로 풀었다

처음에는 System.out.println으로 출력해서 시간초과 났었는데 BufferedWriter 사용하니까 해결됨

profile
💻 개발 공부 기록장

0개의 댓글

관련 채용 정보