数字移动

tn592271 程序题 共 个子题

题目描述

小 A 有一个包含 $N$ 个正整数的序列 $A = \{A_1, A_2, \ldots, A_N\}$,序列 $A$ 恰好包含 $\frac{N}{2}$ 对不同的正整数。形式化地,对于任意 $1 \le i \le N$,存在唯一一个 $j$ 满足 $1 \le j \le N, i \ne j, A_i = A_j$。

小 A 希望每对相同的数字在序列中相邻。为了实现这一目的,小 A 每次操作会选择任意 $i$($1 \le i \le N$),将当前序列的第 $i$ 个数字移动到任意位置,并花费对应数字的体力。

例如,假设序列 $A = \{1,2,1,3,2,3\}$,小 A 可以选择 $i = 2$,将 $A_2 = 2$ 移动到 $A_3 = 1$ 的后面,此时序列变为 $\{1,1,2,3,2,3\}$,耗费 2 点体力。小 A 也可以选择 $i = 3$,将 $A_3 = 1$ 移动到 $A_2 = 2$ 的前面,此时序列变为 $\{1,1,2,3,2,3\}$,花费 1 点体力。

小 A 可以执行任意次操作,但他希望自己每次花费的体力尽可能小。小 A 希望你能帮他计算出一个最小的 $x$,使得他能够在每次花费的体力均不超过 $x$ 的情况下令每对相同的数字在序列中相邻。

输入格式

第一行一个正整数 $N$,代表序列长度。保证 $N$ 为偶数。

第二行包含 $N$ 个正整数 $A_1, A_2, \ldots, A_N$,代表序列 $A$。且对于任意 $1 \le i \le N$,存在唯一一个 $j$ 满足 $1 \le j \le N, i \ne j, A_i = A_j$。

数据保证小 A 至少需要执行一次操作。

输出格式

输出一行,代表满足要求的 $x$ 的最小值。

样例1

输入:

6
1 2 1 3 2 3

输出:

2

数据范围

对于40%的测试点,保证 $1 \le N, A_i \le 100$。

对于所有测试点,保证 $1 \le N, A_i \le 10^5$。

本题为编程题,提交代码并运行通过测试点后判分。

正在加载题目数据…
已答 /
子题
该题型需在试卷/作业中作答,单题练习暂不支持
答案解析
提交记录
共 条 仅展示自由练习提交
正在加载提交记录…
讨论
发布
登录后参与讨论 立即登录
发布讨论需先绑定并验证手机号 去绑定手机号
加载中…
我
我
回复 @
回复 @
发送
还没有人讨论,来发表第一条吧