11722 : 가장 긴 감소하는 부분 수열

풀이

죽을 것 같아도
미칠 것 같아도
하늘만 뚫어지게 보며 버텼죠
그대를 본다면
눈물을 본다면
분명 난 주저앉고 말테니

코드

#include <stdio.h>
#include <algorithm>
using namespace std;

int n, tmp, len, a[1001], d[1001];

int main() {
	scanf("%d", &n);
	for (int i = 0; i < n; i++) {
		scanf("%d", &tmp);
		auto ret = lower_bound(a, a + i, tmp, [](const int &i, const int &j) { return i > j; });
		*ret = tmp;
		if (ret == a + len) len++;
	}

	printf("%d", len);

	return 0;
}
#include <stdio.h>

int n, ans, a[1002], d[1002];

int main() {
	scanf("%d", &n);
	for (int i = 0; i < n; i++) scanf("%d", &a[i]);
	for (int i = 0; i < n; i++) {
		d[i] = 1;
		for (int j = 0; j < i; j++) {
			if (a[i] < a[j] && d[i] < d[j] + 1)
				d[i] = d[j] + 1;
		}
		ans = ans > d[i] ? ans : d[i];
	}

	printf("%d", ans);

	return 0;
}

아무말

백준, 백준 온라인 저지, BOJ, Baekjoon Online Judge, C, C++, 씨, 씨쁠쁠, JAVA, algorithm, 자바, 알고리즘, 자료구조, 문제, 문제 풀이, 풀이

wookje.kwon's profile image

wookje.kwon

2018-01-15 16:49

Read more posts by this author