AT_abc258_e [ABC258E] Packing Potatoes

题目描述

有 $10^{100}$ 个土豆依次在传送带上流过,每次流过一个。每个土豆的重量由长度为 $N$ 的数列 $W = (W_0, \dots, W_{N-1})$ 给出,第 $i\ (1 \leq i \leq 10^{100})$ 个流过的土豆的重量为 $W_{(i-1) \bmod N}$。这里,$(i-1) \bmod N$ 表示 $i-1$ 除以 $N$ 的余数。 高桥君首先准备一个空箱子,并按照以下规则依次将土豆装入箱中: - 将土豆放入箱子中。如果箱中土豆的总重量达到或超过 $X$,则给该箱盖上盖子,并重新准备一个空箱子。 给定 $Q$ 个询问。对于第 $i\ (1 \leq i \leq Q)$ 个询问,给出正整数 $K_i$,请你求出第 $K_i$ 个被盖上盖子的箱子中装有多少个土豆。可以证明,在本题的约束下,被盖上盖子的箱子至少有 $K_i$ 个。

输入格式

输入以如下格式从标准输入读入。 > $N$ $Q$ $X$ $W_0$ $W_1$ $\ldots$ $W_{N-1}$ > $K_1$ > $\vdots$ > $K_Q$

输出格式

输出 $Q$ 行。第 $i\ (1 \leq i \leq Q)$ 行输出第 $i$ 个询问的答案。

说明/提示

## 约束 - $1 \leq N, Q \leq 2 \times 10^5$ - $1 \leq X \leq 10^9$ - $1 \leq W_i \leq 10^9\ (0 \leq i \leq N-1)$ - $1 \leq K_i \leq 10^{12}\ (1 \leq i \leq Q)$ - 所有输入均为整数 ## 样例解释 1 高桥君在盖上第 $2$ 个箱子之前的操作如下: - 准备一个空箱子。 - 将第 $1$ 个土豆放入箱子,箱中土豆总重量为 $3$。 - 将第 $2$ 个土豆放入箱子,箱中土豆总重量为 $3 + 4 = 7$,达到 $X = 5$,因此给箱子盖上盖子。 - 准备一个新的空箱子。 - 将第 $3$ 个土豆放入箱子,箱中土豆总重量为 $1$。 - 将第 $4$ 个土豆放入箱子,箱中土豆总重量为 $1 + 3 = 4$。 - 将第 $5$ 个土豆放入箱子,箱中土豆总重量为 $1 + 3 + 4 = 8$,达到 $X = 5$,因此给箱子盖上盖子。 第 $1$ 个被盖上的箱子里有 $2$ 个土豆,第 $2$ 个被盖上的箱子里有 $3$ 个土豆。 由 ChatGPT 4.1 翻译