https://school.programmers.co.kr/learn/courses/30/lessons/87946?language=java
import static java.lang.Math.*;
class Solution {
static int answer = 0;
static boolean[] visit = new boolean[9];
static void dfs(int cnt, int tired, int[][] dungeons){
for(int i = 0; i < dungeons.length; i++){
if(!visit[i] && tired >= dungeons[i][0]){
visit[i] = true;
dfs(cnt+ 1, tired - dungeons[i][1], dungeons);
visit[i] = false;
}
}
answer = max(answer, cnt);
}
public int solution(int k, int[][] dungeons) {
dfs(0, k, dungeons);
return answer;
}
}
완전탐색 문제.
주어지는 값이 적으니 완전탐색으로 풀만하다.
항상 visit 을 풀어줘야하는걸 까먹어서 참..
