愤怒的奶牛

提交数: 5, 通过率: 20%, 平均分: 62

题目描述:

奶牛贝茜设计了一款她认为必火的游戏:愤怒的奶牛。

游戏设定(她坚信这是她的原创)是玩家用一个弹弓将一头奶牛射向一个数轴,数轴的不同位置上分布着一些干草捆。

奶牛以足够的力量砸向某个干草捆,并使得该干草捆发生爆炸,爆炸可能会不断引起连锁反应,导致更多的干草捆发生爆炸。

目标是用一头奶牛引起的连锁反应引爆尽可能多的干草捆。

共有 N 个干草捆位于数轴中的不同整数位置,其坐标依次为 x1,x2,…,xN

如果将奶牛射向位于位置 x 的干草捆,则该干草捆发生爆炸,爆炸半径为 1,爆炸将吞噬 1 单位距离内的所有干草捆。

然后这些干草捆(全部同时)发生爆炸,每个干草捆的爆炸半径为 2。

二次爆炸中吞噬的所有尚未爆炸的干草捆也(全部同时)发生爆炸,爆炸半径为 3。

也就是说,在 t 时刻爆炸的干草捆的爆炸半径为 t,其爆炸波及的干草捆在 t+1 时刻也会爆炸,爆炸半径为 t+1,以此类推。

请确定,通过合理选择奶牛射向的干草捆,能够引爆的干草捆最大数量。

输入格式:

第一行包含整数 N。

接下来 N 行包含 x1, … , xN

输出格式:

输出能够引爆的干草捆的最大数量。

数据范围:

1 ≤ N ≤ 100 ,
0 ≤ xi ≤ 109

样例输入:

6
8
5
6
13
3
4

样例输出:

5

提示:

样例解释
将奶牛射向位于位置 5 的干草捆,产生半径为 1 的爆炸。

爆炸吞噬位置 4 和 6 处的干草捆,引发半径为 2 的二次爆炸。

二次爆炸吞噬位置 3 和 8 处的干草捆,引发半径为 3 的三次爆炸。

位置 13 的干草捆无法被引爆。

时间限制: 1000ms
空间限制: 256MB

来源: USACO 2016 January Contest Bronze