#R1109. 糖果(Candy)

0

糖果(Candy)

糖果(Candy)

题目描述

2025 年青岛市中小学程序设计竞赛高中组 T2

小 A 喜欢糖果,它们有不同的种类,种类 ii 的美味等级为 ii,等级数值越低表示糖果越美味,等级数值最小是 00。

小 A 喜欢收集更加美味的糖果。具体的,假设小 A 拥有若干个糖果,包含了集合 SS 内的种类,那么小 A 的下一个收集目标就是 SS 没出现过的美味等级数值最低的糖果(也就是小 A 没有获得的最美味的糖果)。

一天小 A 发现了 nn 颗糖果整齐地排成一行,第i 枚糖果的美味等级为 aia_i。小 A 突发奇想:对于每个非空的区间1≤l≤r≤n1 ≤ l ≤ r ≤ n,假设他拥有了糖果 al,al+1,...,ara_l, a_{l+1}, . . . , a_r,小 A的下一个收集目标是什么。小 A 不关心具体能收集到什么糖果,他只在意所有收集目标的美味等级之和。

帮助小 A 求出他的问题的答案。

【形式化题意】

定义 mex(S)\text{mex}(S) 表示集合 SS 内最小的没出现过的非负整数,如 mex({0,1,3,4})=2\text{mex}(\{0, 1, 3, 4\}) = 2,mex({1,2,5})=0\text{mex}(\{1, 2, 5\}) = 0,mex({0,1,2,3})=4\text{mex}(\{0, 1, 2, 3\}) = 4。

定义 S(l,r)S(l, r) 表示集合 {al,al+1,...,ar}\{a_l, a_{l+1}, . . . , a_r\}。

给定 nn 和一个长度为 nn 的非负整数序列 a1,a2,...,ana_1, a_2, . . . , a_n,你需要求出

∑l=1n∑r=lnmex(S(l,r))\sum_{l=1}^n\sum_{r=l}^n\text{mex}(S(l,r))

输入格式

第一行输入一个正整数 nn。

第二行输入 nn 个非负整数 a1,a2,...,ana_1, a_2, . . . , a_n。

输出格式

一行一个非负整数表示答案。

样例输入 #1

3
1 2 3

样例输出 #1

0

样例输入 #2

3
0 1 2

样例输出 #2

6

数据范围

样例 1 解释:

所有区间的 mex\text{mex} 都是 00。

3
0 1 2
6

对于所有测试数据,保证 $1\le n \le 3\times 10^5,0 \le a_i \le 3\times 10^{5}$。

测试点编号 n≤n\le 特殊限制
1,21,2 100100 无
3∼63\sim 6 30003000
7,87,8 3×1053\times 10^5 保证 ai≠1a_i \ne 1
9∼129\sim 12 5×1045\times 10^4 无
13∼2013 \sim 20 3×1053\times 10^5

知识点与难度

本题涉及的知识点从属于 CSP-S,难度(CF Rating):1900。


测试点分布

Subtask 分值 测试点编号 说明
0 10 1~2 样例
1 25 3~8 小规模与边界测试数据
2 30 9~16 中等规模测试数据
3 35 17~25 满规模极限测试数据

出处:原题链接