DFS + 메모이제이션 (Memoization)1. 개념DFS(깊이 우선 탐색)는 모든 경우의 수를 탐색하는 알고리즘이지만, 동일한 상태를 여러 번 탐색하면 비효율적입니다.메모이제이션(Memoization)은 이미 계산한 결과를 저장하여 같은 상태를 재사용하는 기법으로, DFS와 결합하면 중복 연산을 줄여 성능을 크게 향상시킬 수 있습니다. 특징:완전 탐색 + DP 혼합 기법재귀 호출 시 이미 방문한 상태의 결과를 캐시하여 O(지수) → O(다항)으로 시간 단축상태 정의가 명확해야 적용 가능2. 기본 아이디어DFS로 상태를 탐색상태에 대한 결과를 메모 배열(dp)에 저장이미 계산된 상태라면 저장된 값을 바로 반환모든 상태 계산 후, dp에 기록된 값 사용3. 기본 코드 (Java 예시)import ja..