#include <bits/stdc++.h>
using namespace std;
int x,n,pos,pos2,a[100005],ans[100005],ans2[100005];
int main()
{
while(cin >> x)
a[++n] = x;
for(int i = n;i >= 1;i--)
{
if(a[i] <= ans[pos])
ans[upper_bound(ans + 1,ans + pos + 1,a[i]) - ans] = a[i];
else
ans[++pos] = a[i];
}
for(int i = 1;i <= n;i++)
{
if(a[i] > ans2[pos2])
ans2[++pos2] = a[i];
else
ans2[lower_bound(ans2 + 1,ans2 + pos2 + 1,a[i]) - ans2] = a[i];
}
cout << pos << endl << pos2;
return 0;
}