문제 풀이 및 개발 공간

[백준] 11055번 가장 큰 증가하는 부분 수열 (silver 2 본문

백준공부/java

[백준] 11055번 가장 큰 증가하는 부분 수열 (silver 2

gomduri43 2023. 7. 6. 03:34

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));

        int n=Integer.parseInt(br.readLine());
        int[][] dp=new int[n][2];
        StringTokenizer st=new StringTokenizer(br.readLine());
        for(int i=0; i<n; i++){
            dp[i][0]=Integer.parseInt(st.nextToken());
        }

        for(int i=0; i<n; i++){
            dp[i][1]+=dp[i][0];
            for(int j=i+1; j<n; j++){
                if(dp[j][0]>dp[i][0]){
                    dp[j][1]=Math.max(dp[j][1],dp[i][1]);
                }
            }
        }
        int max=0;
        for(int i=0; i<n; i++){
            max= max > dp[i][1] ? max : dp[i][1];
        }
        bw.write(max+"");
        bw.flush();
    }
}