백준공부/java
[백준] 17845번 수강 과목 (gold 5
gomduri43
2023. 9. 24. 21:36
import java.io.*;
import java.util.*;
public class Main{
public static void main(String[] args) throws IOException{
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(System.out));
StringTokenizer st=new StringTokenizer(br.readLine());
int n=Integer.valueOf(st.nextToken());
int k=Integer.valueOf(st.nextToken());
int[] dp=new int[n+1];
for(int i=0; i<k; i++){
st=new StringTokenizer(br.readLine());
int v=Integer.valueOf(st.nextToken());
int t=Integer.valueOf(st.nextToken());
for(int j=n; j>=1; j--){
if(j+t<=n && dp[j]!=0){
dp[j+t]=Math.max(dp[j+t], dp[j]+v);
}
if(j==t){
dp[j]=Math.max(dp[j], v);
}
}
}
int max=0;
for(Integer e:dp){
max= max < e ? e :max;
}
bw.write(max+"");
bw.flush();
}
}