| 记录编号 | 258889 | 评测结果 | AAAAAAAAAA | 
    
        | 题目名称 | 1398.最长上升子序列 | 最终得分 | 100 | 
    
        | 用户昵称 |  NewBee | 是否通过 | 通过 | 
    
        | 代码语言 | C++ | 运行时间 | 0.012 s | 
    
        | 提交时间 | 2016-05-07 16:35:11 | 内存使用 | 0.29 MiB | 
    
    
    
    		显示代码纯文本
		
		#include<cstdio>
#include<cstring>
#define Cu fclose(stdin);fclose(stdout);return 0;
#define Begin freopen("lis1.in","r",stdin);freopen("lis1.out","w",stdout);chul();Cu;
//designed by New_Beeؼ 
using namespace std;
const int maxn=1110;
int a[maxn];
int ans=0;int t=0;
void mem();
void chul();
void adds(int,int,int);
int main(){
	Begin;
}
void chul(){
	mem();
	int n;scanf("%d",&n);
	for(int i=1;i<=n;i++){
		int tim;
		scanf("%d",&tim);
		adds(0,t,tim);
	}
	printf("%d",ans);
}
void adds(int si,int ti,int x){
	while(si<=ti){
		int mid=(si+ti)>>1;
		if(a[mid]>=x)ti=mid-1;
		else si=mid+1;
	}
	if(si>ans)ans=si;if(si>t)t++;
	a[si]=x;
}
void mem(){
	memset(a,-1,sizeof(a));
}