이번에 풀어볼 문제는 가장 긴 증가하는 부분 수열2이다.
해당 문제 링크는 아래에서 확인할 수 있다.
https://www.acmicpc.net/problem/12015
12015번: 가장 긴 증가하는 부분 수열 2
첫째 줄에 수열 A의 크기 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 수열 A를 이루고 있는 Ai가 주어진다. (1 ≤ Ai ≤ 1,000,000)
www.acmicpc.net
1. 문제 확인
2. 문제 풀이
import java.util.*;
public class Main{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int max=0;
int[] a = new int[n+1];
int[] b = new int[n+1];
for(int i=0; i<n; i++){
b[i]=sc.nextInt();
a[i]=1;
}
for(int i=0; i<n ; i++){
for(int j=0 ; j<=i ; j++){
if(b[j]<b[i] && a[j]>=a[i]){
a[i]=a[j]+1;
}
}
}
for(int i=0; i<n ; i++){
if(a[i]>max)
max=a[i];
}
System.out.println( max );
}
}
3. 결과
'security > 백준 알고리즘' 카테고리의 다른 글
백준 알고리즘 23단계 동적 계획법 2- 동전1(2293번) Python (0) | 2021.06.01 |
---|---|
백준 알고리즘 22단계 우선 순위 큐 - 큐의 절댓값 힙(11286번) Python (0) | 2021.05.25 |
백준 알고리즘 20단계 분할 정복- 행렬 곱셈 (2740번) Java (0) | 2021.05.18 |
백준 알고리즘 19단계 큐, 덱- 요세푸스 문제 0 (11866번) Python (0) | 2021.05.04 |
백준 알고리즘 19단계 큐, 덱- 카드2 (2164번) Python (0) | 2021.05.04 |
댓글