一只兔子回答 x,表示和它同色的一共有 x+1 只(含它自己)。同一种回答的兔子可以分到多个颜色组,每组容量是 x+1。
森林中有若干只兔子,每只兔子都有一种颜色,但森林中兔子的总数量未知。
现在询问其中 n 只兔子:
“除了你自己之外,还有多少只兔子和你的颜色相同?”
第 i 只兔子的回答记录为 answersi,表示除了它自己之外,还有 answersi 只兔子与它的颜色相同。
需要注意的是,回答相同的兔子不一定全部属于同一种颜色。
给定数组 answers,请计算森林中兔子数量可能的最小值。
第一行输入一个整数 n,表示参与回答的兔子数量。
第二行输入 n 个整数 answersi,表示每只兔子的回答,相邻整数之间用空格分隔。
1≤n≤1000
0≤answersi<1000
输出一个整数,表示满足所有兔子回答的情况下,森林中兔子数量的最小值。
输入
3
1 1 2
输出
5
说明
回答 1 的兔子表示还有 1 只兔子和自己颜色相同,因此这种颜色共有 2 只兔子。
两只回答 1 的兔子可以属于同一种颜色,所以这部分最少有 2 只兔子。
回答 2 的兔子表示还有 2 只兔子和自己颜色相同,因此这种颜色共有 3 只兔子。
所以森林中兔子的最少数量为
2+3=5
输入
3
10 10 10
输出
11
说明
每只回答 10 的兔子都表示,与自己颜色相同的兔子一共有
10+1=11
只。
这 3 只兔子可以属于同一种颜色,因此只需要存在一个包含 11 只兔子的颜色组即可满足所有回答。
所以森林中兔子的最少数量为 11。
© CodeFun2000 · 使用条款
Scan the QR code below with WeChat to sign in
First-time scan will create your account automatically
请使用微信扫描下方二维码完成注册