From 02e40b17e4823b9b4de60fdfaccfaf8da67320d8 Mon Sep 17 00:00:00 2001 From: LiiNi-coder <97495437+LiiNi-coder@users.noreply.github.com> Date: Fri, 14 Nov 2025 23:28:29 +0900 Subject: [PATCH] =?UTF-8?q?[20251114]=20PGM=20/=20LV2=20/=20=ED=94=BC?= =?UTF-8?q?=EB=A1=9C=EB=8F=84=20/=20=EC=9D=B4=EC=9D=B8=ED=9D=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...M \355\224\274\353\241\234\353\217\204.md" | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 "LiiNi-coder/202511/14 PGM \355\224\274\353\241\234\353\217\204.md" diff --git "a/LiiNi-coder/202511/14 PGM \355\224\274\353\241\234\353\217\204.md" "b/LiiNi-coder/202511/14 PGM \355\224\274\353\241\234\353\217\204.md" new file mode 100644 index 00000000..0605f15e --- /dev/null +++ "b/LiiNi-coder/202511/14 PGM \355\224\274\353\241\234\353\217\204.md" @@ -0,0 +1,33 @@ +```java +import java.util.*; + +class Solution { + private int maxCount = 0; + + public int solution(int k, int[][] dungeons){ + boolean[] visited = new boolean[dungeons.length]; + dfs(k, dungeons, visited, 0); + return maxCount; + } + + private void dfs(int cur, int[][] dungeons, boolean[] visited, int count){ + if(count > maxCount){ + maxCount = count; + } + for(int i = 0; i < dungeons.length; i++){ + if(visited[i]) { + continue; + } + int required = dungeons[i][0]; + int cost = dungeons[i][1]; + if(cur < required){ + continue; + } + visited[i] = true; + dfs(cur - cost, dungeons, visited, count + 1); + visited[i] = false; + } + } +} + +```