P11638 Max,Mex

题目背景

**hack 数据已添加,位于 Subtask#5,不计分。** **请注意本题特殊的空间限制。** 本题中定义 $\max\{S\}$ 为 $S$ 中的最大值,$\operatorname{mex}\{S\}$ 为 $S$ 中最小没出现过的自然数。

题目描述

给定一个长度为 $n$ 的序列 $a$。 一次操作你可以选定一个 $(i,j)$,满足 $1\le i,j\le n$ 以及 $i\neq j$,令 $x=\max\{a_i,a_j\}$,$y=\operatorname{mex}\{a_i,a_j\}$,那么 $a_i=x$,$a_j=y$。 请问进行若干次操作后,$\sum_{i=1}^n a_i$ 最大为多少?

输入格式

输出格式

说明/提示

**【样例解释】** 操作 $(5,1)$,$(5,2)$,答案为 $2+2+4+5+1+4=18$。 **【数据范围】** - Subtask#1($10\text{pts}$):$n=1$,**空间限制 4MB**; - Subtask#2($20\text{pts}$):$a_i\ge 2$,**空间限制 512MB**; - Subtask#3($30\text{pts}$):无特殊限制,**空间限制 512MB**。 - Subtask#4($40\text{pts}$):无特殊限制,**空间限制 4MB**。 - Subtask#5($0\text{pts}$):hack,**空间限制 512MB**。 对于 $100\%$ 的数据,$1\le n\le 10^6$,$0\le a_i\le 10^9$。