programmers.co.kr/learn/courses/30/lessons/64064
1. banned_id 리스트를 퍼뮤테이션을 돌려서 user_id 사이즈만큼만 가지고 옵니다.
이 배열을 permu_banned_id라고 하겠습니다.
2. 그 다음은 user_id와 permu_banned_id를 비교해서 모두 일치하면 이게 정답 1개를 의미합니다.
그래서 1번의 갯수만큼 루프를 돌려서 2번이 나온 만큼이 정답이 됩니다.
주의점은 하나의 user_id가 여러 개의 banned_id에 걸릴 수 있습니다.
그래서 순열이나 조합을 통해 반드시 모든 user_id <-> banned_id 쌍을 비교해줘야 합니다.
코드: github.com/cotchan/algorithm/blob/main/java/PROGRAMMERS/PG64064.java
'Algorithm > Programmers' 카테고리의 다른 글
[2020 카카오 기출] 수식 최대화(JAVA) (0) | 2021.05.10 |
---|---|
[2019 카카오 기출] 실패율(JAVA) (0) | 2021.05.04 |
[2018 카카오 기출] 파일명 정렬(JAVA) (0) | 2021.04.28 |
[2018 카카오 기출] 캐시(JAVA) (0) | 2021.04.26 |
[2019 카카오 기출] 튜플(JAVA) (0) | 2021.04.26 |