#include<iostream>
#include<cstdlib>
using namespace std;
int a[10005],dp[10005],ord[1005];
int main()
{
int n=1;
while(cin>>a[n]) n++;n--;
int len=0,maxn=0;
for(int i=1;i<=n;i++)
{
int left=1,right=len,mid;
while(right>=left)
{
mid=(left+right)/2;
if(ord[mid]>=a[i]) right=mid-1;
else left=mid+1;
}
dp[i]=left;
ord[left]=a[i];
if(left>len) len=left;
if(dp[i]>maxn) maxn=dp[i];
}
cout<<"Max hits: "<<maxn<<endl;
system("pause");
return 0;
}