import java.io.*;
import java.util.*;
public class Main {

    //判断一个数组arr是否为搜索二叉树的后序遍历
    /*后序遍历      左 右 根
    搜索二叉树:左子树的节点值均比根小,右子树的节点值均比根大
    递归
    * */
    public static boolean isPostArray(int[]arr){
        if(arr==null||arr.length==0){
            return false;
        }
        return isPost(arr,0,arr.length-1);
    }

    public static boolean isPost(int[]arr,int start,int end){
        if(start==end){
            return true;
        }
        int less=-1;    //左子树最右边
        int more=end;   //右子树最左边

        for(int i=start;i<end;i++){
            if(arr[i]<arr[end]){
                less=i;
            }else {
                //more=end说明还未开始确定右子树边界
                more= more==end?i:more;
            }
        }

        //只有右子树 或者 只有左子树
        if(less==-1||more==end){
            return isPost(arr,start,end-1);
        }
        //边界对不上
        if(less!=more-1){
            return false;
        }

        return isPost(arr,start,less)&&isPost(arr,more,end-1);

    }

    public static void main(String[] args) {
        Scanner in=new Scanner(System.in);
        int n=in.nextInt();
        int[] arr=new int[n];
        for (int i = 0; i <n ; i++) {
            arr[i]=in.nextInt();
        }

        boolean result=isPostArray(arr);
        System.out.println(result);

    }
}