본문 바로가기
백준 알고리즘/다이나믹 프로그래밍

백준 11722번 C++

by paysmile 2019. 1. 23.


#include<iostream>

#include<algorithm>

using namespace std;


int arr[1001];

int ans[1001];

int n;


void caldown() {

ans[0] = 1;

int maxnum;


for (int i = 1; i < n; i++) {

maxnum = 0;

for (int j = i - 1; j != -1; j--) {

if (arr[j] > arr[i])

maxnum = max(maxnum, ans[j]);

}

if (maxnum != 0) 

ans[i] = maxnum + 1;

else

ans[i] = 1;

}

maxnum = 0;

for (int i = 0; i < n; i++) {

maxnum=max(maxnum, ans[i]);

}

cout << maxnum;

}


int main(void) {

cin >> n;


for (int i = 0; i < n; i++) {

cin >> arr[i];

}

caldown();

}

'백준 알고리즘 > 다이나믹 프로그래밍' 카테고리의 다른 글

백준 1965번 C++  (0) 2019.02.13
백준 1520번 C++  (0) 2019.01.23
백준 11051번 C++  (0) 2019.01.21
백준 11055번 C++  (0) 2019.01.21
백준 1699번 C++  (0) 2019.01.21