#DJKS3035. 【C++ 三级_202409】爆气球

【C++ 三级_202409】爆气球

Description

爆气球对孩子们来说是很好玩的游戏。假设有n只气球被布置在一条直线上,游戏的目标很简单,就是爆掉尽可能多的气球。但是这里我们加一条特殊的规则——你只能跳一次。我们假设聪明的娃穿了件浑身带刺的衣服,跳到某个位置,躺平,这样气球只要碰到娃身体的任何部分都会立刻爆炸。那么你的任务就是告诉娃应该跳到哪里,才能一次爆掉最多的气球。

Input Format

输入第一行两个正整数:

n(≤ 100000)为一条线上布置的气球的数量;

h(≤ 1000)为孩子伸直双臂能达到的高度。

第二行给出n个整数,每个对应一只气球在直线轴上的坐标。

题目保证坐标按递增顺序给出,所有坐标值在[-1000000, 1000000]区间内。

Output Format

在一行中输出孩子跳跃的位置坐标,使得孩子跳到这个位置然后躺平能够爆掉身下最多的气球;

随后输出能爆掉的气球的最大数量。如果这个坐标不唯一,输出最小的那个值。一行中的数间应有1个空格。

11 120
-120 -40 0 80 122 140 160 220 240 260 300
120 5

Hint

注意:跳到从120到140,或240到260之间的任何位置,都可以爆掉5只气球,所以120作为最小的坐标被输出。

Source

思码特OJ编程训练营 http://127.0.0.1