Skip to content

Commit 17fa801

Browse files
committed
[baekjoon] 14501번 - 퇴사
1 parent c29c954 commit 17fa801

File tree

2 files changed

+43
-1
lines changed

2 files changed

+43
-1
lines changed

README.md

+2-1
Original file line numberDiff line numberDiff line change
@@ -49,4 +49,5 @@
4949

5050
### 브루트포스 (Brute Force Algorithm)
5151
- 2024년 9월 9일 : [p42842](https://school.programmers.co.kr/learn/courses/30/lessons/42842)
52-
- 2024년 9월 10일 : [p84512](https://school.programmers.co.kr/learn/courses/30/lessons/84512)
52+
- 2024년 9월 10일 : [p84512](https://school.programmers.co.kr/learn/courses/30/lessons/84512)
53+
- 2024년 9월 11일 : [b14501](https://www.acmicpc.net/problem/14501)

b14501/Main.java

+41
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
package b14501;
2+
3+
import java.io.BufferedReader;
4+
import java.io.IOException;
5+
import java.io.InputStreamReader;
6+
import java.util.StringTokenizer;
7+
8+
public class Main {
9+
static int N;
10+
static int[] T;
11+
static int[] P;
12+
static int[] dp;
13+
14+
public static void main(String[] args) throws IOException {
15+
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
16+
17+
N = Integer.parseInt(br.readLine());
18+
19+
T = new int[N + 1];
20+
P = new int[N + 1];
21+
dp = new int[N + 2];
22+
23+
for (int i = 1; i <= N; i++) {
24+
StringTokenizer st = new StringTokenizer(br.readLine());
25+
T[i] = Integer.parseInt(st.nextToken());
26+
P[i] = Integer.parseInt(st.nextToken());
27+
}
28+
29+
for (int i = N; i > 0; i--) {
30+
int day = i + T[i];
31+
32+
if (day <= N + 1) {
33+
dp[i] = Math.max(P[i] + dp[day], dp[i + 1]);
34+
} else {
35+
dp[i] = dp[i + 1];
36+
}
37+
}
38+
39+
System.out.println(dp[1]);
40+
}
41+
}

0 commit comments

Comments
 (0)