https://www.acmicpc.net/problem/14501
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
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+1];
int[] P = new int[n+1];
int[] dp = new int[n+1];
for(int i=1; i<=n; i++){
StringTokenizer st = new StringTokenizer(br.readLine());
T[i] = Integer.parseInt(st.nextToken());
P[i] = Integer.parseInt(st.nextToken());
dp[i] = P[i];
}
for(int i=2; i<=n; i++){
for(int j=1; j<i; j++) {
if(i-j < T[j]) continue;
dp[i] = Math.max(dp[i], dp[j] + P[i]);
}
}
int max=0;
for(int i=1; i<=n; i++){
if(i + T[i] > n+1) continue;
max = Math.max(max, dp[i]);
}
System.out.println(max);
}
}
'ALGORITHM' 카테고리의 다른 글
[JAVA] 백준 1759번- 암호 만들기 (0) | 2022.12.14 |
---|---|
[JAVA] 백준 14889번- 스타트와 링크 (0) | 2022.12.12 |
[JAVA] 백준 2668번- 숫자고르기 (0) | 2022.12.01 |
[JAVA] 백준 10971번- 외판원 순회2 (0) | 2022.11.30 |
[JAVA] 백준 6603- 로또 (0) | 2022.11.29 |