https://school.programmers.co.kr/learn/courses/30/lessons/87946
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
완전탐색 + 구현
: 현재 던전에 갈 수도 안갈 수도 있음
class Solution {
static int N;
static int[] selected;
static boolean[] visited;
static int[][] dun;
static int answer = -1;
public int solution(int k, int[][] dungeons) {
N = dungeons.length;
selected = new int[N];
visited = new boolean[N];
dun = dungeons;
back(0, k, 0);
return answer;
}
static void back(int cnt, int k, int travelCnt) {
if(cnt == N) {
answer = Math.max(travelCnt, answer);
return;
}
for(int i = 0; i < N; i++) {
if(visited[i])continue;
visited[i] = true;
if(dun[i][0] <= k) {
back(cnt + 1, k - dun[i][1], travelCnt + 1);
}
back(cnt + 1, k , travelCnt );
visited[i] = false;
}
}
}
[프로그래머스] 전화번호 목록 (0) | 2025.01.31 |
---|---|
[프로그래머스] 광물 캐기 (0) | 2025.01.31 |
[프로그래머스] 붕대감기 (0) | 2025.01.31 |
[코드트리] 바이러스 백신 - unsolved (0) | 2025.01.30 |
[프로그래머스] 이모티콘 할인 행사 (0) | 2025.01.30 |