AT_abc472_c [ABC472C] On a Diet
题目描述
高桥正在父母家度过一个为期 $N$ 天的归省之旅。
在他父母家,每天都会准备一份点心,第 $i$ 天的点心热量为 $A_i$。
为了管理健康,他每次都会遵循以下规则:只有在最近 $M$ 天内他所吃点心的总热量不超过 $K$ 时,他才会吃当日的点心。
具体而言,按照 $i=1,2,\dots,N$ 的顺序,他是否在第 $i$ 天吃点心,遵循如下规则:
- 假设他决定在第 $i$ 天吃点心,若从第 $\max(i-M+1,1)$ 天到第 $i$ 天他已吃的点心总热量不超过 $K$,那么他实际上会在第 $i$ 天吃点心。否则,他不会在第 $i$ 天吃点心。
对于每一天 $i=1,2,\dots,N$,判断高桥是否会在这一天吃点心。
输入格式
输入按照如下格式从标准输入中给出:
> $N\ M\ K\ A_1\ A_2\ \dots\ A_N$
输出格式
输出共 $N$ 行。第 $i$ 行输出 `Yes`,表示高桥在第 $i$ 天吃点心;否则输出 `No`。
说明/提示
### 样例解释 1
对于每一天,假设他决定吃点心,那么最近三天所吃点心的总热量如下:
- 第 $1$ 天:$48$
- 第 $2$ 天:$48+73=121$
- 第 $3$ 天:$48+59=107$
- 第 $4$ 天:$90$
- 第 $5$ 天:$21$
### 数据范围
- $1 \leq M \leq N \leq 2 \times 10^5$
- $1 \leq K \leq 10^{15}$
- $1 \leq A_i \leq 10^9$
- 所有输入值均为整数。
由 ChatGPT 5 翻译