CF2089B1 Canteen (Easy Version)

题目描述

这是该问题的简单版本。两个版本的区别在于此版本中,$$k=0$$。只有当你解决了该问题的所有版本时才能进行 hack。 Ecrade 有两个由整数构成的序列 $$$a_0, a_1, \ldots, a_{n - 1}$$$ 和 $$$b_0, b_1, \ldots, b_{n - 1}$$$。保证 $$$a$$$ 中所有元素的总和不超过 $$$b$$$ 中所有元素的总和。 初始时,Ecrade 可以对序列 $$$a$$$ 进行恰好 $$$k$$$ 次修改。保证 $$$k$$$ 不超过 $$$a$$$ 的总和。每次修改操作如下: - 选择一个整数 $$$i$$$($$0 \le i < n$$)满足 $$$a\_i > 0$$$,并执行 $$$a_i := a_i - 1$$$。 然后,Ecrade 将对 $$$a$$$ 和 $$$b$$$ 依次执行以下三个操作,这三个操作构成一轮操作: 1. 对每个 $$$0 \le i < n$$$:$$t := \min(a_i, b_i)$$,$$a_i := a_i - t$$,$$b_i := b_i - t$$; 2. 对每个 $$$0 \le i < n$$$:$$c_i := a_{(i - 1) \bmod n}$$; 3. 对每个 $$$0 \le i < n$$$:$$a_i := c_i$$。 Ecrade 想知道,在对 $$$a$$$ 进行恰好 $$$k$$$ 次修改后,使得 $$$a$$$ 中所有元素变为 $$$0$$$ 所需的最小轮数。 然而,这似乎有些复杂,因此请帮助他!

输入格式

每个测试包含多个测试用例。第一行包含测试用例的数量 $$$t$$$($$1 \le t \le 2 \cdot 10^4$$)。接下来是各测试用例的描述。 每个测试用例的第一行包含两个整数 $$$n$$$、$$k$$($$1 \le n \le 2 \cdot 10^5$$,$$k = 0$$)。 每个测试用例的第二行包含 $$$n$$$ 个整数 $$$a\_0, a\_1, \ldots, a\_{n - 1}$$$($$1 \le a_i \le 10^9$$)。 每个测试用例的第三行包含 $$$n$$$ 个整数 $$$b\_0, b\_1, \ldots, b\_{n - 1}$$$($$1 \le b_i \le 10^9$$)。 保证所有测试用例的 $$$n$$$ 之和不超过 $$$2 \cdot 10^5$$$。同时保证每个测试用例中 $$$a$$$ 的总和不超过 $$$b$$$ 的总和,且 $$$k$$$ 不超过 $$$a$$$ 的总和。

输出格式

对于每个测试用例,输出在对 $$$a$$$ 进行恰好 $$$k$$$ 次修改后,使得 $$$a$$$ 中所有元素变为 $$0$$ 所需的最小轮数。

说明/提示

在此版本中,Ecrade 不能对 $$$a$$$ 进行修改。 在第一个测试用例中: - 第一轮操作后,$$a=[0,0,0]$$,$$b=[4,0,0]$$。 在第二个测试用例中: - 第一轮操作后,$$a=[3,0,0,1]$$,$$b=[3,1,0,0]$$; - 第二轮操作后,$$a=[1,0,0,0]$$,$$b=[0,1,0,0]$$; - 第三轮操作后,$$a=[0,1,0,0]$$,$$b=[0,1,0,0]$$; - 第四轮操作后,$$a=[0,0,0,0]$$,$$b=[0,0,0,0]$$。 翻译由 DeepSeek R1 完成