#include <iostream>
using namespace std ;
const int N = 1e8;
typedef unsigned long long ULL ;
int q[N], tem[N], n ;
ULL merge_sort( int l, int r) {
if ( l >= r)
return 0 ;
int mid = l + r >> 1 ;
ULL res = merge_sort(l, mid) + merge_sort( mid + 1, r) ;
int k = 0, i = l, j = mid + 1 ;
while ( i <= mid && j <= r ) {
if ( q[i] <= q[j])
tem[k++] = q[i++] ;
else {
tem[k++] = q[j++] ;
res += mid - i + 1 ;
}
}
while ( i <= mid)
tem[k++] = q[i++] ;
while ( j <= r)
tem[k++] = q[j++] ;
for ( int i = l, j = 0 ; i <= r ; i++, j++) {
q[i] = tem[j] ;
}
return res ;
}
int main() {
scanf("%d",&n);
for ( int i = 0 ; i < n ; i ++)
scanf("%d" , &q[i]) ;
printf("%d",merge_sort(0 , n - 1)) ;
}