Scroll indicator done
728x90

https://www.acmicpc.net/problem/14501

 

14501번: 퇴사

첫째 줄에 백준이가 얻을 수 있는 최대 이익을 출력한다.

www.acmicpc.net

 

 

코드
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

// 최대 수익을 구하는 프로그램이고 문제 흐름 상 dp 문제 같았다.
// 해당 일정마다 순회하면서, (해당 일자 + 걸리는 기간) dp 를 갱신하는 방식
public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int n = Integer.parseInt(br.readLine());
        int[] t = new int[n + 10];
        int[] p = new int[n + 10];
        int[] dp = new int[n + 10];
        
        for (int i = 1; i <= n; i++) {
            String[] strArray = br.readLine().split(" ");
            t[i] = Integer.parseInt(strArray[0]);
            p[i] = Integer.parseInt(strArray[1]);
        }

        for (int i = 1; i <= n + 1; i++) {
            dp[i] = Math.max(dp[i], dp[i - 1]);
            dp[t[i] + i] = Math.max(dp[t[i] + i], dp[i] + p[i]);
        }

        System.out.println(dp[n + 1]);
    }
}

728x90

'BAEKJOON > Java' 카테고리의 다른 글

[B2688][줄어들지 않아][java]  (0) 2024.06.01
[B21278][호석이 두 마리 치킨][java]  (0) 2023.10.11
[B16508][전공책][java]  (0) 2023.10.10
[B1503][비슷한 단어][java]  (0) 2023.10.10
[B1503][세 수 고르기][java]  (0) 2023.10.10