여름방학-동적계획 III-(H-최소 차단 시스템)

758 단어 동적 기획
/*
  :          。
  :        ,      ,   ,         。
          。  
*/
#include<iostream>
#include<cstring>
using namespace std;
const int MAXN=30005;
int System[MAXN];//   i          
void Init()//   
{
	for(int i=0;i<=MAXN;i++)
	{
		System[i]=MAXN;
	}
}
int main()
{
	int n;
	while(cin>>n)
	{
		Init();//   
		int top=0,j,h;//top       ,j     ,h     
		for(int i=0;i<n;i++)
		{
			cin>>h;
			for(j=0;j<=top;j++)//        ,      
			{                  //   ,         
				if(System[j]>=h)// j       
				{
					System[j]=h;//           
					break;
				}
			}
			if(j>top)//         
			{
				System[++top]=h;//       
			}
		}
		cout<<top+1<<endl;//      
	}
	return 0;
}

좋은 웹페이지 즐겨찾기