비트마스킹2 [백준]1094막대기 C++ 비트마스킹 문제이다. #include using namespace std; int main() { int temp = 0; for (int i = 0; i 1000 2^3 =8 temp -> 10000 2^4 =16 . . temp ->1000000 2^6 =64 #include using namespace std; //지민이가 가지고 있는 막대의 길이를 모두 더한다.처음에는 64cm 막대 하나만 가지고 있다.이때, 합이 X보다 크다면, 아래와 같은 과정을 반복한다. //가지고 있는 막대 중 길이가 가장 짧은 것을 절반으로 자른다. //만약, 위에서 자른 막대의 절반 중 하나를 버리고 남아있는 막대의 길이의 합이 X보다 크거나 같다.. 2022. 3. 30. [백준]11723집합 c++ 비트마스크를 몰라서 그냥 풀어봤는데 맞았다. 그냥 조건에 맞추어서 배열 값을 변경해주면 되는 문제였다. 비트마스킹 연산 안한 버전 #include #include using namespace std; bool bit[21]; int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int M; cin >> M; int count = 0; /*add x : S에 x를 추가한다. (1 ≤ x ≤ 20) S에 x가 이미 있는 경우에는 연산을 무시한다. remove x : S에서 x를 제거한다. (1 ≤ x ≤ 20) S에 x가 없는 경우에는 연산을 무시한다. check x : S에 x가 있으면 1을, 없으면 0을 출력한다. (1.. 2022. 3. 26. 이전 1 다음