对于给定的长度为 的双排列 ,对于每个 ,若其两次出现的位置为 和 ,则定义 。 小红将双排列的权值定义为每一对相同元素的下标距离之和,即: 。 现在小红拿到了一个长为 的双排列 。 小芳可以帮他进行最多一次如下操作(也可以不操作): 选择下标 ,交换 。 请你帮小红求出可得到的最大权值。 【名词解释】 双排列:长度为 的双排列为两个长度为 的排列打乱顺序后得到的数组。 排列:长度为 的排列是由 这 个整数、按任意顺序组成的数组(每个整数均恰好出现一次)。例如, 是一个长度为 的排列,而 和 都不是排列,因为前者存在重复元素,后者包含了超出范围的数。
输入描述:
第一行输入一个整数 。第二行输入  个整数 ,表示双排列的元素。保证其是一个合法的双排列。


输出描述:
输出一个整数,代表最大权值。
示例1

输入

2
1 1 2 2

输出

2

说明

\hspace{15pt}在这个样例中,初始 f(1)=2-1-1=0f(2)=4-3-1=0,所以初始权值为 0
\hspace{15pt}我们可以交换 a_2a_3 得到 \{1,2,1,2\},此时 f(1)=3-1-1=1f(2)=4-2-1=1,所以权值为 0+2=2。可以证明这是最大权值。
示例2

输入

2
1 2 1 2

输出

2
加载中...