#YHW704. 夹心饼干

夹心饼干

夹心饼干

1. 题目描述

给定一个数列a1,a2,⋯ ,ana_1, a_2, \cdots, a_n,请求出在这个数列中,存在多少个夹心饼干。

所谓夹心饼干,就是从数列中挑出三个数ai,aj,aka_i, a_j, a_k,满足i<j<ki < j < k且ai=aka_i = a_k且ai≠aja_i \neq a_j。

2. 输入

2.1 输入格式

  • 第一行:单个整数nn。
  • 第二行:nn个整数表示a1,a2,⋯ ,ana_1, a_2, \cdots, a_n。

2.2 数据范围

  • 30%的数据,n≤100n \leq 100。
  • 60%的数据,n≤20000n \leq 20000。
  • 100%的数据,1≤n≤3000001 \leq n \leq 300000,0≤ai<n0 \leq a_i < n。

2.3 输入样例

5
1 2 1 2 1

3. 输出

3.1 输出格式

单个整数,表示夹心饼干的数量。

3.2 输出样例

5

4.样例说明

对于输入样例 5 1 2 1 2 1,数列a=[1,2,1,2,1]a = [1, 2, 1, 2, 1],下面来找出其中的夹心饼干:

  • 当i=1i = 1,j=2j = 2,k=3k = 3时,a1=1a_1 = 1,a2=2a_2 = 2,a3=1a_3 = 1,满足1<2<31 < 2 < 3且a1=a3a_1 = a_3且a1≠a2a_1 \neq a_2 ,这是一个夹心饼干。
  • 当i=1i = 1,j=4j = 4,k=5k = 5时,a1=1a_1 = 1,a4=2a_4 = 2,a5=1a_5 = 1,满足1<4<51 < 4 < 5且a1=a5a_1 = a_5且a1≠a4a_1 \neq a_4 ,这是一个夹心饼干。
  • 当i=3i = 3,j=4j = 4,k=5k = 5时,a3=1a_3 = 1,a4=2a_4 = 2,a5=1a_5 = 1,满足3<4<53 < 4 < 5且a3=a5a_3 = a_5且a3≠a4a_3 \neq a_4 ,这是一个夹心饼干。
  • 当i=1i = 1,j=2j = 2,k=5k = 5时,a1=1a_1 = 1,a2=2a_2 = 2,a5=1a_5 = 1,满足1<2<51 < 2 < 5且a1=a5a_1 = a_5且a1≠a2a_1 \neq a_2 ,这是一个夹心饼干。
  • 当i=2i = 2,j=3j = 3,k=4k = 4时,a2=2a_2 = 2,a3=1a_3 = 1,a4=2a_4 = 2,满足2<3<42 < 3 < 4且a2=a4a_2 = a_4且a3≠a4a_3 \neq a_4 ,这是一个夹心饼干。

综上,总共能找到55个满足条件的夹心饼干组合,所以输出为55。