#include <bits/stdc++.h>
#define int long long
using namespace std;
#define endl '\n'
#define p (int)(1e9+7)
const int N=2e5+3;
int arr[N],stk[N];
signed main(){
int n=0;
while(cin>>arr[++n]);
int r=0;
stk[++r]=arr[1];
for(int i=2;i<=n;i++){
if(arr[i]<=stk[r]) stk[++r]=arr[i];
else {
int ix=upper_bound(stk+1,stk+r+1,arr[i],greater<int>())-stk;
stk[ix]=arr[i];
}
}
int ans=r-1;
r=0;
stk[++r]=arr[1];
for(int i=2;i<=n;i++){
if(arr[i]>stk[r]) stk[++r]=arr[i];
else {
int ix=lower_bound(stk+1,stk+r+1,arr[i])-stk;
stk[ix]=arr[i];
}
}
int res=r;
cout<<ans<<endl<<res<<endl;
}