87946. 피로도

2025. 4. 21. 22:07·Algorithm/Programmers
목차
  1. 문제
  2. 제한사항
  3. 풀이
  4. 회고

문제

https://school.programmers.co.kr/learn/courses/30/lessons/87946?language=java

제한사항

풀이

import java.util.*;

class Solution {
    static int answer = -1;
    public int solution(int k, int[][] dungeons) {
        
        int n =dungeons.length;
        
        
        boolean[] visited = new boolean[n];
        dfs(dungeons, k, 0, visited, 0);
        return answer;
    }
    
    void dfs(int[][] dungeons, int k, int offset, boolean[] visited, int result) {
    
        
        for(int i = 0 ; i<dungeons.length; i++) {
            if(visited[i] || k < dungeons[i][0]) continue; 
            
            visited[i] = true;
            dfs(dungeons, k-dungeons[i][1], i, visited, result+1);
            visited[i] = false;
        }
        
        answer = Math.max(result, answer);
    }
}

회고

입력값이 자연수이고, 값의 범위가 작아서 그리디 알고리즘을 예상했는데 생각보다 단순했다. dfs를 활용한 백트래킹을 통해 해결할 수 있었다. k가 최소 필요 소모도보다 작으면 가지치기를 했다.

'Algorithm > Programmers' 카테고리의 다른 글

92342. 양궁대회  (0) 2025.05.08
42898. 등굣길  (0) 2025.04.09
12927. 야근 지수  (0) 2025.04.04
42884. 단속 카메라  (0) 2025.04.04
178870. 연속된 부분 수열의 합  (0) 2025.04.01
  1. 문제
  2. 제한사항
  3. 풀이
  4. 회고
'Algorithm/Programmers' 카테고리의 다른 글
  • 92342. 양궁대회
  • 42898. 등굣길
  • 12927. 야근 지수
  • 42884. 단속 카메라
사랑우주인
사랑우주인
  • 사랑우주인
    lovelyAlien
    사랑우주인
  • 전체
    오늘
    어제
  • 글쓰기
    관리
    • 분류 전체보기 (207)
      • Programming (4)
        • Spring (28)
        • Java (46)
        • JPA (2)
        • 디자인 패턴 (5)
        • 개발&아키텍처 (0)
      • Network (12)
      • OS (19)
      • Database (1)
      • Kubernetes (0)
      • Kafka (2)
      • Algorithm (49)
        • BaekJoon (1)
        • Programmers (19)
        • Algorithm (5)
        • Socar (2)
        • LeetCode (19)
      • Interview (2)
      • Issues (2)
      • DotJoin (1)
      • Git (4)
      • 독서 (3)
      • 끄적끄적 (1)
      • 외부활동 (26)
        • 항해플러스 (2)
        • JSCODE 네트워크 (19)
        • JSCODE 자바 (5)
      • SQL (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
    • GitHub
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    algorithm
    JSCode
    준영속 엔티티
    Reorder List
    socar
    BFS
    pacific atlantic water flow
    AuthenticationSuccessHandler
    트랜잭션
    @JsonProperty
    Generic
    RR
    Thread
    Climbing Stairs
    clone graph
    lower bounded wildcards
    wildcards
    운영체제
    Process
    rotting oranges
    제네릭
    OS
    디자인 패턴
    fcfs
    Oauth2
    minimum number of arrows to burst balloons
    LinkedList
    @JsonNaming
    추상화 클래스
    runner 기법
  • 최근 댓글

  • hELLO· Designed By정상우.v4.10.1
사랑우주인
87946. 피로도

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.