#include<bits/stdc++.h>
using namespace std;
const long long maxn=1e5+10;
long long dp_down[maxn],dp_up[maxn],a[maxn];
long long ans_down=-1,ans_up=1;
int main(){
int n=1;
while(cin>>a[n]){
dp_down[n]=1;
dp_up[n]=1;
n++;
}
n--;
for(int i=2;i<=n;i++){
for(int j=1;j<i;j++){
if(a[j]>=a[i]) dp_down[i]=max(dp_down[i],dp_down[j]+1);
if(a[j]<a[i]) dp_up[i]=max(dp_up[i],dp_up[j]+1);
}
}
for(int i=1;i<=n;i++){
ans_down=max(dp_down[i],ans_down);
ans_up=max(dp_up[i],ans_up);
}
cout<<ans_down<<endl<<ans_up;
return 0;
}