Coding/백준
11722번 가장 긴 감소하는 부분 수열
labote
2020. 2. 16. 17:46
간단한 DP 문제
11053번과 거의 같은 문제
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | #include <iostream> #include <algorithm> #define MAX 1001 using namespace std; int dp[MAX]; int A[MAX]; int N; void DP(){ int ans=0; for(int i=0;i<N;i++){ dp[i]=1; for(int j=0;j<i;j++){ if(A[i]<A[j]){ dp[i]=max(dp[i],dp[j]+1); } } ans=max(ans,dp[i]); } cout << ans << endl; } int main(){ cin >> N; for(int i=0;i<N;i++){ cin >> A[i]; } DP(); } | cs |