비트마스크

Algorithm/Programmers

[PG/C++] 프로그래머스 Lv2 - 후보키

😎 문제 설명 😀 풀이 과정 후보키를 고르는 모든 조합을 비트마스크 집합을 이용하여 표현하였다. 아무것도 고르지 않는 i = 0를 제외한 모든 조합을 for문을 이용해 순회하며, 유일성과 최소성을 검사하여 사용이 가능한 후보키라면 답에 추가해주었다. 비트마스크의 원소 하나하나는 최대 8개의 Attribute의 집합을 표현하고 있고, 원소가 1이면 후보키, 0이면 후보키가 아닌 것으로 가정하였다. 어떻게 유일성을 검사하나요 ? i번, j번 Attribute가 후보키라고 가정하자. 모든 튜플의 i번, j번 속성에 해당하는 문자열을 이어붙인다. 그 결괏값 중에 중복되는 문자열이 하나라도 있으면 (i, j)는 후보키가 될 수 없다. 예를 들어서, ["이름", "전공"]을 후보키로 한 경우에 예제 입력에 주어진 ..

Algorithm/Algospot

[Algorithm] 비트마스크 (Bit-mask) #230210

비트마스크(bitmask) 란 ? 이진수 표현을 자료구조로 쓰는 기법이다. 비트 연산자 a & b : AND 연산 a | b : OR 연산 a ^ b : XOR 연산 ~a : NOT 연산 a > b 정수 a를 오른쪽으로 b비트 Shift 비교 연산자 → 비트 연산자의 우선순위 집합의 구현 int noPizza = 0; // 공집합 int fullPizza = (1

MINGYUM
'비트마스크' 태그의 글 목록