**#include<bits/stdc++.h>
using namespace std;
long long a[1005],dp[1005],n=0,maxx=0;
int main() {
n=0;
while(cin>>a[n+1]) {
n++;
}
for(int i=1; i<=n; i++) {
dp[i]=1;
for(int j=1; j<i; j++) {
if(a[j]>=a[i]) {
dp[i]=max(dp[i],dp[j]+1);
}
}
}
for(int i=1; i<=n; i++) {
maxx=max(dp[i],maxx);
}
cout<<maxx<<endl;
memset(dp,0,sizeof(dp));
maxx=0;
for(int i=1; i<=n; i++) {
dp[i]=1;
for(int j=1; j<=i; j++) {
if(a[j]<a[i]) {
dp[i]=max(dp[j]+1,dp[i]);
}
}
}
for(int i=1; i<=n; i++) {
maxx=max(dp[i],maxx);
}
cout<<maxx;
return 0;
}**