#DPRM2. 野生菌的采摘法则

野生菌的采摘法则

野生菌的采摘法则

题目背景

每到雨季,云南的大山里就会长满各种各样的野生菌。小明作为一名有经验的“找菌人”,发现了一大片极其罕见的野生菌群。

题目描述

这片野生菌群共有 nn 朵野生菌,每朵菌子都有一个“大小值” aia_i。 小明发现这些野生菌的地下菌丝网络是紧密相连的。如果他采摘了一朵大小值为 xx 的菌子,他就能获得 xx 的收益;但是,为了维持生态平衡和保护菌丝,所有大小值为 x1x-1x+1x+1 的野生菌都会迅速枯萎消失,无法再被采摘。

请注意:如果有多朵大小同为 xx 的菌子,当你决定采摘其中一朵时,其余同为 xx 的菌子并不会消失,你可以把它们全部采走(当然,所有 x1x-1x+1x+1 的菌子依然会全部消失)。

请你帮小明算一算,在这个神奇的法则下,他能采摘到的野生菌大小值总和最大是多少?

输入格式

第一行包含一个整数 nn,表示野生菌的总数量。 第二行包含 nn 个整数 a1,a2,,ana_1, a_2, \dots, a_n,分别表示每朵野生菌的大小值。

输出格式

输出一个整数,表示小明能获得的最大大小值总和。

样例 #1

样例输入 #1

9
1 2 1 3 2 2 2 2 3

样例输出 #1

10

提示与数据范围

【样例解释】 在这个例子中,有 2 个 1,5 个 2,2 个 3。 最优策略是采摘所有的 2。获得收益 5×2=105 \times 2 = 10。同时,所有的 1 和 3 都会枯萎消失。 如果你选择采摘 1 和 3,收益为 2×1+2×3=82 \times 1 + 2 \times 3 = 8,不如前一种方案。

【数据范围】 对于 30%30\% 的数据,满足 1n201 \le n \le 20。 对于 100%100\% 的数据,满足 1n1051 \le n \le 10^51ai1051 \le a_i \le 10^5