블로그

후보키 소재 정리 (2019 kakao)

게시 1분

코딩테스트 연습 - 후보키

  1. 모든 조합 순회

비트마스킹을 통한 연속된 숫자의 2^N의 모든 조합 구하기

for (int i=0; i < (1 << n); i++) cout << i;
  1. 순회 특징

집합 A의 차례가 되었다고 가정하면
A의 모든 부분집합은 이미 수행되었다.

  1. 비트의 부분집합 판별

비트 a, b에 대해서
a & b == a 면
a는 b의 부분집합임이 성립한다.

  1. string key의 주의점

여러개의 string이 있을 때,
모든 string을 더해서 하나의 string으로 만들고 이를 map에 저장해
key로 사용할 때가 종종있음.
이때 중간에 띄어쓰기와 같은 구분자를 넣어줘야함.
그렇지 않으면 "a", "a", "bc" 와 "aa", "b", "c"의 key가 "aabc"로 같아지는 반례가 생길 수 있다.

댓글

댓글을 남기면 닉네임(또는 GitHub 계정 정보)이 저장됩니다. 개인정보처리방침

GitHub