ALGORITHM/PROGRAMMERS
[프로그래머스] 위클리 챌린지 12주차 - 피로도
0298
2021. 10. 27. 22:41
https://programmers.co.kr/learn/courses/30/lessons/87946
코딩테스트 연습 - 12주차
XX게임에는 피로도 시스템(0 이상의 정수로 표현합니다)이 있으며, 일정 피로도를 사용해서 던전을 탐험할 수 있습니다. 이때, 각 던전마다 탐험을 시작하기 위해 필요한 "최소 필요 피로도"와 던
programmers.co.kr
2021-10-27
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
class Solution {
public static int answer;
public static boolean[] vtd;
public static void solve(int cnt, int[][] dungeons, int k) {
for(int i = 0; i < vtd.length; i++) {
if(!vtd[i] && k >= dungeons[i][0]) {
vtd[i] = true;
solve(cnt+1, dungeons, k - dungeons[i][1]);
vtd[i] = false;
}
}
answer = Math.max(answer, cnt);
}
public static int solution(int k, int[][] dungeons) {
answer = 0;
vtd = new boolean[dungeons.length];
solve(0, dungeons, k);
return answer;
}
}
|
cs |
#문제풀이
처음에 문제 그냥 봤을 때는 배열 정렬인가 했는데 그냥 dfs로 풀면된다.