CF2101C.23 Kingdom
提高+/省选-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
我们定义 dx(c) 为整数 x 在数列 c 中的距离,也就是 c 中出现的两个 x 之间的最长间隔。若 x 出现的次数不足两次则为零。
形式化地,dx(c)=1≤i<j≤∣c∣∧ci=cj=xmax(j−i)。
定义一个数列 c 的美丽度为 i=1∑ndi(c)。
给你一个长为 n 的数列 a,你将构造一个长为 n 的数列 b,要求每一项均满足 1≤bi≤ai。求这样的 b 的最大美丽度。你需要求出这个值。
输入格式
多组数据,第一行一个整数 t(1≤t≤104) 表示数据组数。
对于每组数据:
第一行一个整数 n(1≤n≤2×105)。
第二行 n 个整数 a1,a2,⋯,an(1≤ai≤n)。
保证单个测试点中 ∑n≤2×105。
输出格式
每组数据输出一行一个整数,表示答案。
输入输出样例
输入#1
4 4 1 2 1 2 2 2 2 10 1 2 1 5 1 2 2 1 1 2 8 1 5 2 8 4 1 4 2
输出#1
4 1 16 16
说明/提示
样例解释
第一组数据中,令 b=(1,2,1,2),d1(b)=3−1=2,d2(b)=4−2=2,美丽度为 4。可以证明这个可能的最大的美丽值。
第二组数据中,令 b=(1,1) 或 b=(2,2) 均可得到 1 的美丽值。
第三组数据中,令 b=(1,2,1,4,1,2,1,1,1,2),则有 d1(b)=9−1=8,d2(b)=10−2=8,d4(b)=0,可以获得 16 的美丽值。
By @chenxi2009
输入解题思路,AI测评打分。不知道怎么写?