0. 문제 |
1. 아이디어 |
1) 앞의 문제들과 동일한 아이디어!
2. 소스코드 |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
#include <iostream>
int main()
{
int N, length=0,arr[1000], dp[1000];
std::cin >> N;
for (int i = 0; i < N; i++)
std::cin >> arr[i];
for (int i = 0; i < N; i++)
{
int max = 0;
for (int j = 0; j < i; j++)
if (arr[i] < arr[j]) //자신보다 큰 값일 때
if (max < dp[j]) max = dp[j];
dp[i] = max + 1;
if (length < dp[i]) length = dp[i];
}
std::cout << length;
}
|
cs |
3. 결과 |
4. 피드백 |
-
화이팅!!
'알고리즘 > BOJ' 카테고리의 다른 글
[C++] 백준 1912번 - 연속합 (0) | 2020.03.23 |
---|---|
[C++] 백준 11054번 - 가장 긴 바이토닉 부분 수열 (0) | 2020.03.22 |
[C++] 백준 11055번 - 가장 큰 증가 부분 수열 (0) | 2020.03.22 |
[C++] 백준 11053번 - 가장 긴 증가하는 부분 수열 (0) | 2020.03.15 |
[C++] 백준 2156번 - 포도주 시식 (0) | 2020.03.15 |