CF847D Dog Show

题目描述

下星期将会有一个由狗参加的综艺节目,你的狗有幸被选中了。自然的,你想使得你的狗获胜。 在这个节目中,狗的任务是吃掉尽可能多的狗粮。狗们的比赛是分开进行的,规则如下: 一开始,有 $n$ 只盛放着狗粮的碗排列在一条直线上,狗一开始在起点 $x=0 $处,这些碗依次坐落在 $x=1,x=2,\cdots,x=n$ 处,标号依次为 $1$ 至 $n$。当节目开始后,狗将会立即向右跑向第一只碗。 碗里的狗粮并不是一开始就可以吃的,因为它们太烫了。在比赛开始后的第 $t_i$ 秒,狗才能去吃第 $i$ 只碗里的狗粮。 狗需要用 $1$ 秒的时间来向右从 $x$ 坐标移动到 $x+1$ 坐标,狗不可以向左走。当狗遇到一碗狗粮时,有两种不同情况: 狗粮已经冷却:此时狗不需要花费任何时间来吃掉这碗狗粮。 狗粮还未冷却:此时狗可以在原地等候直到狗粮冷却,或者直接放弃这碗狗粮继续向右行动。 $T$ 秒后节目将结束,此时狗不能再移动或者吃狗粮。如果狗在 $T$ 秒前早已达到第 $n$ 只碗的右边,那么节目可以提前结束。 你的任务是最大化狗在 $T$ 秒内吃掉的狗粮数量。

输入格式

第一行两个整数 $n, T$($1 \le n \le 2\times10^5$,$1 \le T \le 2\times10^9$)。 第二行 $n$ 个整数 $t_i$($1\le t_i \le 10^9$)。

输出格式

输出一个整数,表示狗在 $T$ 时刻内最多能吃几碗狗粮。

说明/提示

在第一个样例中,一种策略是狗跳过第二碗吃第一碗和第三碗。