#include<bits/stdc++.h>
using namespace std;
long long n,b[500001],t=1,x,ans,l,r,m;
int main(){
    cin>>n>>x;
    b[1]=x;
    for(int i=2;i<=n;i++){
        cin>>x;
        if(b[t]>x)t++,ans++,b[t]=x;
        else{
            l=1,r=t;
            while(l<r){
                m=(l+r)/2;
                if(r-l==1)m=r;
                if(x>=b[m])r=m-1;
                else l=m;
            }
            ans=ans+(t-l+1);
            while(t&&b[t]<x)t--;
            t++;
            b[t]=x;
        }
    }
    cout<<ans;
    return 0;
}

0 条评论

目前还没有评论...