본문 바로가기
항해

[DAY57] 99클럽 코딩테스트 JAVA 백준 가장 긴 증가하는 부분 수열 11053번

by neVerThe1ess 2025. 2. 18.

11053번: 가장 긴 증가하는 부분 수열

 

🌕최종코드

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));
        int n = Integer.parseInt(br.readLine()); 
        int[] arr = new int[n+1];  
        int[] dp = new int[n+1]; 
        StringTokenizer st = new StringTokenizer(br.readLine());
        for (int i = 1; i <= n; i++) {
            arr[i] = Integer.parseInt(st.nextToken()); 
            dp[i] = 1; 
        }
        int max = 1;
        for (int i = 1; i <= n; i++) {
            for (int j = 1; j < i; j++) {
                if (arr[i] > arr[j]) dp[i] = Math.max(dp[i], dp[j]+1);
                
            }
            max = Math.max(max, dp[i]); 
        }
        System.out.print(max);
    }
}