본문 바로가기

카테고리 없음

2021 동계모각코 2회차 결과

2회차

using System;
using System.IO;
using System.Text;
using System.Collections;

namespace BOJ11723
{
    class Program
    {
        const int SIZE = 21;
        static StreamReader sr = new StreamReader(Console.OpenStandardInput());
        static StreamWriter sw = new StreamWriter(Console.OpenStandardOutput());

        public static void Main(String[] args)
        {
            BitArray barr = new BitArray(SIZE);
            int N = int.Parse(sr.ReadLine());

            string cmd = "";
            int num = 0;

            for (int i = 0; i < N; i++)
            {
                String[] input = sr.ReadLine().Split();
                cmd = input[0];
                if(input.Length > 1) num = int.Parse(input[1]);

                switch (cmd)
                {
                    case "add":
                        barr.Set(num, true);
                        break;
                    case "remove":
                        barr.Set(num, false);
                        break;
                    case "check":
                        sw.WriteLine(barr.Get(num) ? "1" : "0");
                        break;
                    case "toggle":
                        if (barr.Get(num)) barr.Set(num, false);
                        else barr.Set(num, true);
                        break;
                    case "all":
                        barr.SetAll(true);
                        break;
                    case "empty":
                        barr.SetAll(false);
                        break;
                }
            }
            sw.Flush();
        }
    }
}

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

 

11723번: 집합

첫째 줄에 수행해야 하는 연산의 수 M (1 ≤ M ≤ 3,000,000)이 주어진다. 둘째 줄부터 M개의 줄에 수행해야 하는 연산이 한 줄에 하나씩 주어진다.

www.acmicpc.net

c#에 대하여 백준을 통하여 마무리 감을 잡기위해 문제를 풀었습니다. 복습을 통하여 학기중 까먹었던 내용을 확실히 알게 되었습니다. 정말 유익한 시간이었습니다.