#G525121. [GESP202512 五级 C++] 26. 数字移动
[GESP202512 五级 C++] 26. 数字移动
题目描述
小 A 有一个包含 个正整数的序列 ,序列 恰好包含 对不同的正整数。形式化地,对于任意 ,存在唯一一个 满足 。
小 A 希望每对相同的数字在序列中相邻,为了实现这一目的,小 A 每次操作会选择任意 ,将当前序列的第 个数字移动到任意位置,并花费对应数字的体力。
小 A 可以执行任意次操作,但他希望自己每次花费的体力尽可能小。小 A 希望你能帮他计算出一个最小的 ,使得他能够在每次花费的体力均不超过 的情况下令每对相同的数字在序列中相邻。
输入格式
第一行一个正整数 (偶数)。
第二行 个正整数 ,每个值恰好出现两次。
数据保证至少需要一次操作。
输出格式
一行,满足要求的 的最小值。
数据范围
- 对于 的测试点,保证 。
- 对于所有测试点,保证 。
测试样例
6
1 2 1 3 2 3
2
说明/提示
对于 的测试点,保证 。
对于所有测试点,保证 。