#include<bits/stdc++.h>
using namespace std;
const int maxn = 10101010;
int dp_down[maxn], dp_up[maxn], a[maxn], ans_down = -1, ans_up = -1, n;
int main(){
while(cin>>a[++n]) dp_down[n] = dp_up[n] = 1;
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;
}
不是O(n2)也过不了吗?