#include<iostream>
#include<algorithm>
#include<cstring>
using namespace std;
typedef long long LL;
const int N=1e5+5;
int n,a[N],tr[N],g[N];
int lowbit(int x){return x&-x;}
void in(int x){for(int i=x; i<=n; i+=lowbit(i)){tr[i]++;}}
int sum(int x){
int res=0;
for(int i=x; i; i-=lowbit(i)){
res+=tr[i];
}
return res;
}
int main(){
cin>>n;
for(int i=1; i<=n; i++)cin>>a[i];
for(int i=1; i<=n; i++){
int y=a[i];
g[i]=sum(y-1);
in(y);
}
memset(tr,0,sizeof tr);
LL res=0;
for(int i=n; i; i--){
int y=a[i];
res+=g[i]*(sum(n)-sum(y));
in(y);
}
cout<<res;
}