모든 사진 자료에 관한 출처는 아래 알튜비튜 - 튜터링에 있음을 밝힙니다.
https://github.com/Altu-Bitu/Notice
👾브루트포스
# 무식하게 풀기
- 단순히 가능한 모든 경우를 찾는 기법
- 테스트 케이스의 크기에 따라 소요 시간이 엄청나게 커질 수 있음
- 하지만, 떠올리기 가장 쉬운 방법이므로 문제를 풀때 가장먼저 고려해야하는 방법이기도함.
- 입력범위와 시간복잡도를 잘 고려하여 선택하는것이 중요.
💫특징
"100,000,000 "
▶ 총 연산수가 약 1억회 이하인경우, 충분히 브루트 포스로 접근가능.
▶ 연산수 = 모든 경우의 수 * 각 경우의 연산 횟수
▶ 실제와는 거리가 있지만, 대략적인 브루트 포스 가능 기준으로 잡으면 유용.
▶ 반복문, 비트마스크, 순열, 재귀함수 등으로 접근
📜마무리
- 모든 경우의 수를 다해보는 브루트 포스
- 입력범위가 커지는 만큼, 시간초과의 위험이 있음(즉, 효율적인 방법은 아님)
- 그래도 비교적 떠올리기 쉽다
- 따라서, 연산의 횟수가 1억회 이하라면 일단 시도해보자.
- 설마가 사람잡는다..
✨이것도 알아보세요!
- 브루트포스를 재귀함수로 구현해보아요(종료조건 중요)
- next_permutation과 비트마스크에 대해서도 알아보아요(백트래킹 문제에서 많이 사용)