본문 바로가기
Algorithm/Programmers

[2019 카카오 기출] 불량 사용자

by BAYABA 2020. 5. 6.

 

<출처: https://programmers.co.kr/learn/courses/30/lessons/64064>


배열 크기 제한이 크지 않으므로 팩토리얼로 경우의 수를 생성해도 시간초과가 나지 않습니다.

 

user_id 목록을 next_permutation을 통해 모든 경우의 수를 생성해주고, 이를 banned_id 와 비교해줍니다.

 

포함되는 경우의 수는 비트연산자 & set을 통해 특정 상태 나타내는 하나의 수를 set에 저장하였습니다.

 

set에 들어있는 수는 banned_id 리스트와 일치하는 user_id의 유일한 목록을 나타내므로 

 

set에 들어가있는 원소의 수가 정답이 됩니다.


<코드: https://github.com/cottory/algorithm/blob/master/PROGRAMMERS/kakao22_0505.cc>