#include <iostream>
#include <algorithm>
using namespace std;
int h[100010], n, dp[100010];
int z[100010], cnt, maxn;
int main()
{
int x;
while(cin >> x)
h[++n] = x;
for(int i = 1; i <= n; i++)
{
int k = 1;
while(k <= cnt && z[k] >= h[i])
k++;
if(k > cnt)
z[++cnt] = h[i];
else
z[k] = h[i];
}
cout << cnt << endl;
cnt = 0;
for (int i = 1; i <= n; i++)
{
int k = 1;
while(k <= cnt && z[k] < h[i])
k++;
if(k > cnt)
z[++cnt] = h[i];
else
z[k] = h[i];
}
cout << cnt << endl;
}