#include<bits/stdc++.h>
using namespace std;int n=1,a[100005],f1[100005],b[100005],f2[100005];
int main()
{
while(cin>>a[n])
{
n++;
f1[n]=1;
f2[n]=1;
}
n--;
f1[1]=a[1];
f2[1]=a[1];
int len1=1,len2=1;
for(int i=2;i<=n;i++)
{
int l=0,r=len2,mid;
if(a[i]<=f2[len2])
{
len2++;
f2[len2]=a[i];
}
else
{
while(l<r)
{
mid=(l+r)/2;
if(f2[mid]<a[i]) r=mid;
else l=mid+1;
}
f2[l]=a[i];
}
}
cout<<len2<<endl;
for(int i=2;i<=n;i++)
{ int l=1,r=len1,mid;
if(a[i]>f1[len1])
{
len1++;
f1[len1]=a[i];
}
else
{ while(l<r)
{ mid=(l+r)/2;
if(a[i]>f1[mid])
{
r=mid;
}
else l=mid+1;
}
f1[l]=min(f1[l],a[i]);
}
} cout<<len1;
}