#include<bits/stdc++.h>
using namespace std;
int n,a[1000005],cnt,s[1000005];
int main() {
while(cin>>a[n]) {
n++;
}
n--;
memset(s,0,sizeof(s));
cnt=1;
s[1]=a[1];
for (int i=2; i<=n; i++) {
if(a[i]<=s[cnt]) {
s[++cnt]=a[i];
} else {
int l=1,r=cnt;
while(l<r) {
int mid=(l+r)>>1;
if(a[i]>s[mid]) {
r=mid;
} else {
l=mid+1;
}
}
s[l]=a[i];
}
}
int sum=cnt;
memset(s, 0, sizeof(s));
cnt = 1;
s[1] = a[1];
for (int i = 2; i <= n; i++) {
if (a[i] > s[cnt]) {
cnt++;
s[cnt] = a[i];
} else {
int l = 1, r = cnt;
while (l < r) {
int mid = (l + r) >> 1;
if (a[i] <= s[mid]) r = mid;
else {
l = mid + 1;
}
}
s[l] =a[i];
}
}
cout<<sum<<endl<<cnt;
}