-
집합 - 11723백준 2020. 3. 6. 18:33반응형
#include <iostream> #include <string> using namespace std; int s = 0; void add(int num) { s |= (1 << num); } void remove(int num) { s &= ~(1 << num); } void check(int num) { if (s & (1 << num)) { cout << "1" << '\n'; return; } cout << "0" << '\n'; return; } void toggle(int num) { s ^= (1 << num); } void all() { s = (2 << 21) -1; } void empty() { s = 0; } int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int m; cin >> m; string input; int inputNum; for (int i = 0; i < m; i++) { cin >> input; if (input.compare("add") == 0) { cin >> inputNum; add(inputNum); } else if (input.compare("remove") == 0) { cin >> inputNum; remove(inputNum); } else if (input.compare("check") == 0) { cin >> inputNum; check(inputNum); } else if (input.compare("toggle") == 0) { cin >> inputNum; toggle(inputNum); } else if (input.compare("all") == 0) { all(); } else if (input.compare("empty") == 0) { empty(); } } return 0; }
비트마스크, 동적계획법과 관련된 문제였어요
비트마스크 공부하면서 풀어본 기본적인 문제인데 이진법 사용이 서툴렀던게 느껴졌어요 ㅠㅠ
c++ 문법도 많이 잊어버려서 쒯...
제출했더니 시간초과가 나서 왜그런가 했더니 출력할 때 \n이랑 string 비교할 때 compare로 바꿔주니 정답처리 되네
요!
반응형'백준' 카테고리의 다른 글
[백준] 큐2 - 18258 (0) 2020.07.25 [백준] 1로 만들기 - 1463 (0) 2020.03.16 부분 합 - 1806 (0) 2020.03.16