🧩PS/🥉Easy
[JAVA] 백준 11053번 - 가장 긴 증가하는 부분 수열
Cocoon_
2021. 10. 24. 14:50
반응형
📖 문제
📋 코드
import java.util.*;
public class Main {
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
int ans = 0;
int n = sc.nextInt();
int arr[] = new int[n];
int dp[] = new int[n];
for (int i = 0; i < n; i++) {
arr[i] = sc.nextInt();
}
for (int i = 0; i < n; i++) {
int max = 0;
for (int j = 0; j < i; j++) {
if(arr[j] < arr[i]) {
max = Math.max(max,dp[j]);
}
}
dp[i] = max+1;
ans = Math.max(ans,dp[i]);
}
System.out.println(ans);
}
}
👨🏻💻 결과
🔗 링크
https://www.acmicpc.net/problem/11053
11053번: 가장 긴 증가하는 부분 수열
수열 A가 주어졌을 때, 가장 긴 증가하는 부분 수열을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {10, 20, 10, 30, 20, 50} 인 경우에 가장 긴 증가하는 부분 수열은 A = {10, 20, 10, 30, 20, 50} 이
www.acmicpc.net
반응형