#U2021OG1. United Cows of Farmer John
United Cows of Farmer John
农夫约翰合牛国(The United Cows of Farmer John,UCFJ)将要选派一个代表队参加国际牛学奥林匹克(International bOvine olympIad,IOI)。有 N 头奶牛参加了代表队选拔(1≤N≤2⋅10)。她们站成一行,奶牛 i 的品种为 b。
代表队将会由包含至少两头奶牛的连续区间组成——也就是说,对于满足 1≤l<r≤N 的奶牛 l…r。最边上的奶牛会被指定为「领队」。为了避免种内冲突,每一名领队都必须与代表队的其他成员(包括领队)品种不同。
请帮助 UCFJ 求出(由于纳税原因)他们可以选派参加 IOI 的代表队的方法数。
输入格式(从终端 / 标准输入读入):
输入的第一行包含 N。第二行包含N 个整数 b,b,…,b,均在范围 [1,N] 之间。
输出格式(输出至终端 / 标准输出):
输出可能的代表队的数量。注意这个问题涉及到的整数大小可能需要使用 64 位整数型存储(例如,C/C++ 中的 long long)。
输入样例:
7
1 2 3 4 3 2 5
输出样例:
13
每一代表队对应以下的一对领队: (1,2),(1,3),(1,4),(1,7),(2,3),(2,4),(3,4),(4,5),(4,6),(4,7),(5,6),(5,7),(6,7).
测试点性质:
- 测试点 1-3 满足 N≤100。
- 测试点 4-8 满足 N≤5000。
- 测试点 9-20 没有额外限制。