반응형
https://www.acmicpc.net/problem/11053
문제 해결 알고리즘
다이나믹 프로그래밍을 이용해 푼 LIS알고리즘
https://kimmessi.tistory.com/191?category=871925
자세한 내용은 위의 링크를 참고
소스 코드
#include <bits/stdc++.h>
using namespace std;
int main(){
int num; cin >> num;
vector<int> v(num);
vector<int> dp(num);
int result = 1;
for(int i=0;i<num;i++) cin >> v[i];
dp[0] = 1;
for(int i=1;i<num;i++){
dp[i] = 1;
for(int j=0;j<i;j++){
if(v[i] > v[j] && dp[j] + 1 > dp[i]) dp[i] = dp[j] + 1;
}
result = max(result, dp[i]);
}
cout << result;
}
반응형
'알고리즘 문제 해결 > BOJ' 카테고리의 다른 글
[백트래킹] BOJ 9663 N-Queen (0) | 2022.06.14 |
---|---|
[LIS, 이분 탐색] BOJ 12738 가장 긴 증가하는 부분 수열 3 (C++) (0) | 2022.06.13 |
[LIS, 이분 탐색] BOJ 14003 가장 긴 증가하는 부분 수열 5 (C++) (0) | 2022.06.07 |
[LIS, 이분 탐색] BOJ 2352 반도체 설계 (C++) (0) | 2022.06.07 |
[MST, UnionFind] BOJ 1647 도시 분할 계획 (0) | 2022.05.24 |