백준 11722 c++
#include <iostream>
using namespace std;
int A[1001];
int dp[1001];
void input_array(int N)
{
int i;
for (i = 1; i <= N; i++)
{
cin >> A[i];
}
return;
}
int find_result(int N)
{
int i, j, max = 0;
for (i = 1; i <= N; i++)
{
dp[i] = 1;
for (j = 1; j <= i; j++)
{
if (A[j] > A[i] && dp[j] + 1 > dp[i])
{
dp[i] = dp[j] + 1;
}
else
{
;
}
}
}
for (i = 1; i <= N; i++)
{
if (dp[i] > max)
{
max = dp[i];
}
else
{
;
}
}
/*for (i = 0; i <= N; i++)
{
cout << dp[i] << " ";
}
cout << "\n";*/
return max;
}
int main(void)
{
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
int N;
cin >> N;
input_array(N);
cout << find_result(N) << "\n";
return 0;
}