문제 링크입니다: https://programmers.co.kr/learn/courses/30/lessons/42890
모든 경우의 수를 시뮬레이션하는 문제였습니다.
알고리즘은 아래와 같습니다.
1. 각 칼럼들의 값들을 미리 전처리하여 분류합니다.
2. 모든 키의 조합에 대해 시뮬레이션을 진행합니다.
2.1 isCandidateKey 메서드를 통해 모든 튜플을 구분할 수 있는지 확인하고
2.2 isMinimum 메서드를 통해 최소성을 만족하는지 확인합니다.
2.3 2.1, 2.2 조건을 통과한 후보키를 candidateKeys 벡터에 저장합니다.
3. 2.3에서 구한 candidateKeys 벡터의 크기를 반환하면 후보키의 개수입니다.
개발환경: Programmers IDE
지적, 조언, 질문 환영입니다! 댓글 남겨주세요~
반응형
'알고리즘 > programmers' 카테고리의 다른 글
[Programmers] 캐시 (0) | 2022.02.14 |
---|---|
[Programmers] [1차] 프렌즈4블록 (0) | 2022.02.14 |
[Programmers] 순위 검색 (0) | 2022.02.11 |
[Programmers] 튜플 (0) | 2022.02.09 |
[Programmers] 수식 최대화 (0) | 2022.02.02 |