← Back to List

11053번: 가장 긴 증가하는 부분 수열 ↗

Solutions

C++14
332 B | 332 chars
#include <iostream>
using namespace std;
int N,ar[1100],check[1100],Max=1;
int main()
{
	cin>>N;
	for(int x=0; x<N; x++)cin>>ar[x];
	for(int x=0; x<N; x++)
	{
		check[x]=1;
		for(int y=0; y<x; y++)
		{
			if(ar[y]<ar[x]&&check[y]+1>check[x])
			{
				check[x]=check[y]+1;
				if(check[x]>Max) Max=check[x];
			}
		}
	}
	cout<<Max;
}