기록하지 않았다면 잃어버릴 시간들
Home
  • 분류 전체보기 (184)
    • Lang (6)
      • c++ (2)
      • Java (2)
      • python (2)
    • 프레임워크 (18)
      • Spring (16)
      • JPA (2)
    • 알고리즘 (141)
      • 이론 (4)
      • 백준 (59)
      • Codility (13)
      • 프로그래머스 (65)
    • CS (4)
      • 운영체제 (0)
      • 자료구조 (0)
      • DB (4)
      • 네트워크 (0)
      • 보안 (0)
    • 기타 (7)
    • 프로젝트 (4)
      • 게시판 만들기로 배우는 Spring Data JP.. (4)
Home
  • 분류 전체보기 (184)
    • Lang (6)
      • c++ (2)
      • Java (2)
      • python (2)
    • 프레임워크 (18)
      • Spring (16)
      • JPA (2)
    • 알고리즘 (141)
      • 이론 (4)
      • 백준 (59)
      • Codility (13)
      • 프로그래머스 (65)
    • CS (4)
      • 운영체제 (0)
      • 자료구조 (0)
      • DB (4)
      • 네트워크 (0)
      • 보안 (0)
    • 기타 (7)
    • 프로젝트 (4)
      • 게시판 만들기로 배우는 Spring Data JP.. (4)
블로그 내 검색

기록하지 않았다면 잃어버릴 시간들

새로운 것을 배우는게 즐거운 개발자입니다.

  • 알고리즘/백준

    BOJ 11723 집합/ C++

    2022. 5. 22.

    by. 내이름은 킹햄찌

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

     

    11723번: 집합

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

    www.acmicpc.net

     

     

    백준온라인저지 2146번 다리만들기 문제입니다.

     

    아이디어

    bitset을 이용해서 각 comand에 대해 수행하도록 작성했습니다.

     

    #include<iostream>
    #include<bitset>
    #include<string>
    
    using namespace std;
    
    bitset<21> bit;
    
    int main(void) {
    	ios_base::sync_with_stdio(0);
    	cin.tie(0);
    	int t;
    	cin >> t;
    	string s;
    	int n;
    	while(t--) {
    		cin >> s;
    		if (s == "add") {
    			cin >> n;
    			bit[n] = 1;
    		}
    		else if (s == "remove") {
    			cin >> n;
    			if (bit[n])
    				bit[n] = 0;
    		}
    		else if (s == "check") {
    			cin >> n;
    			if (bit[n])
    				cout << "1\n";
    			else
    				cout << "0\n";
    		}
    		else if (s == "toggle"){
    			cin >> n;
    			bit[n].flip();
    		}
    		else if (s == "all")
    			bit.set();
    		else if (s =="empty")
    			bit.reset();
    
    	}
    }

     

    '알고리즘 > 백준' 카테고리의 다른 글

    BOJ 17244 아맞다우산 / C++  (0) 2022.05.23
    BOJ 4991 로봇 청소기/ C++  (0) 2022.05.23
    BOJ13701 /C++  (0) 2022.05.22
    BOJ1194 달이 차오른다, 가자. /C++  (0) 2022.04.21
    BOJ13701 중복제거/C++  (0) 2022.03.13

    댓글

    관련글

    • BOJ 17244 아맞다우산 / C++ 2022.05.23
    • BOJ 4991 로봇 청소기/ C++ 2022.05.23
    • BOJ13701 /C++ 2022.05.22
    • BOJ1194 달이 차오른다, 가자. /C++ 2022.04.21
    맨 위로
전체 글 보기
Tistory 로그인
Tistory 로그아웃
로그아웃 글쓰기 관리

Today

Total

Powered by ⓒ Kakao Corp.

Designed by Nana
블로그 이미지
내이름은 킹햄찌

티스토리툴바