小柒的特殊五元组
题号:NC295055
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 1024 M,其他语言2048 M
64bit IO Format: %lld

题目描述

\hspace{15pt}啦啦啦给小柒送了一个长度为 n 的数组 \{a_1,a_2,\dots,a_n\} 作为礼物。
\hspace{15pt}但是这个数组并不是白送的,小柒需要回答啦啦啦一个关于这个数组的小问题。
\hspace{15pt}这个问题也很简单,请问这个数组中有多少个满足 \texttt{2-1-3-5-4} 模式的五元组子序列。这是指从数组中选取的 5 个数 \{b_1,b_2,b_3,b_4,b_5\} 满足:
\hspace{23pt}\bullet\,这个 5 元组是数组 a 的一个子序列
\hspace{23pt}\bullet\,b_2 < b_1< b_3< b_5< b_4

【名词解释】
\hspace{15pt}子序列:从原序列中删除任意个(可以为零、可以为全部)元素得到的新序列。

输入描述:

\hspace{15pt}第一行输入一个整数 n \left(1\leq n\leq 3\times 10^5\right) 代表数组中的元素个数。 
\hspace{15pt}第二行输入 n 个整数 a_1,a_2,\dots,a_n \left(1\leq a_i\leq n\right) 代表数组中的元素。

输出描述:

\hspace{15pt}输出一个整数,表示满足 \texttt{2-1-3-5-4} 模式的五元组子序列的数量。
示例1

输入

复制
5
2 1 3 5 4

输出

复制
1
示例2

输入

复制
8
2 2 1 3 3 5 4 4

输出

复制
8