#include<iostream>
#include<cstring>
using namespace std;
#include<cstring>
using namespace std;
const int MAX = 105;
int dp[MAX][MAX];
int array[MAX];
int dp[MAX][MAX];
int array[MAX];
int main()
{
int n;
while(cin>>n && n){
memset(dp,0,sizeof(dp));
memset(array,0,sizeof(array));
for(int i=0; i<n; i++){
cin >> array[i];
}
dp[0][0] = 1;
for(int i=1; i<n; i++){
for(int j=0; j<=i; j++){
if(array[i]>array[i-1]){ // 1
for(int k=j+1; k<=i; k++)
dp[i][k] += dp[i-1][j];
}
else{ // 0
for(int k=0; k<=j; k++)
dp[i][k] += dp[i-1][j];
}
}
}
long long sum = 0;
for(int i= 0; i<n; i++)
{
sum += dp[n-1][i];
}
cout << sum << endl;
}
return 0;
}
{
int n;
while(cin>>n && n){
memset(dp,0,sizeof(dp));
memset(array,0,sizeof(array));
for(int i=0; i<n; i++){
cin >> array[i];
}
dp[0][0] = 1;
for(int i=1; i<n; i++){
for(int j=0; j<=i; j++){
if(array[i]>array[i-1]){ // 1
for(int k=j+1; k<=i; k++)
dp[i][k] += dp[i-1][j];
}
else{ // 0
for(int k=0; k<=j; k++)
dp[i][k] += dp[i-1][j];
}
}
}
long long sum = 0;
for(int i= 0; i<n; i++)
{
sum += dp[n-1][i];
}
cout << sum << endl;
}
return 0;
}