VioletaBabel
11722번: 가장 긴 감소하는 부분 수열 본문
#include<cstdio>
#include<algorithm>
#define max(a,b) (a>b)?a:b
int a[1000], ans[1000];
int main()
{
int n;
scanf("%d", &n);
for (int i = 0; i < n; ++i)
scanf("%d", &a[i]);
std::fill_n(&ans[0], 1000, 1);
for (int i = 1; i < n; ++i)
for (int j = i - 1; j > -1; --j)
if (a[i] < a[j])
ans[i] = max(ans[i], ans[j] + 1);
printf("%d", *(std::max_element(&ans[0], &ans[n])));
}
'백준 > 백준-C++' 카테고리의 다른 글
1912번: 연속합 (0) | 2017.06.12 |
---|---|
11054번: 가장 긴 바이토닉 부분 수열 (0) | 2017.06.12 |
11055번: 가장 큰 증가 부분 수열 (0) | 2017.06.12 |
11053번: 가장 긴 증가하는 부분 수열 (0) | 2017.06.12 |
11656번: 접미사 배열 (0) | 2017.06.12 |
Comments