전수조사, BruteForce의 과정
1. 문제의 가능한 경우의 수를 계산해본다
직접 계산을 통해서 구한다. 대부분 손으로 계산 가능
2. 가능한 모든 방법을 다 만들어 본다.
하나도 빠짐 없이 다
- 그냥 다 해보는 방법 (+규칙성을 찾으면 건너뛰어서)
- for문 사용
[방법을 만드는 3가지 방법]
- 순열 사용
- 재귀호출 사용
(순열, 비트마스크로 만든 코드를 재귀로 구현 가능)
- 비트마스크 사용
1) 순서 2) 선택
3. 각각의 방법을 이용해 답을 구한다.
시간복잡도 = O(경우의수 * 방법 1개 시도당 걸리는 시간복잡도)