#include<iostream>
#include<cstdio>
#define maxn 100001
using namespace std;
int q,n;
int a[maxn],b[maxn],h[maxn];
void in(){
while(cin>>q){
n++;
a[n]=q;
}
}
int main()
{
in(); int maxx=0; int ans_1=0,ans_2=0;
for(int i=1;i<=n;i++){
for(int j=1;j<=n-1;j++){
if(a[j]>=a[i]){
if(b[j]>maxx) maxx=b[j];
}
}
b[i]=maxx+1;
if(b[i]>ans_1) ans_1=b[i];
}
int x=0;
for(int i=1;i<=n;i++){
x=0;
for(int j=1;j<=ans_2;j++){
if(a[i]<=h[j]){
if(x==0) x=j;
else if(h[j]<h[x]) x=j;
}
if(x==0){
ans_2++; x=n;
}
h[x]=a[i];
}
}
cout<<ans_1<<endl<<ans_2;
return 0;
}