CF2077F.AND x OR
NOI/NOI+/CTSC
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
假设你有两个长度均为 k 的数组 c 和 d。当且仅当 c 可以通过以下操作任意次变换为 d 时,称这对数组 (c,d) 是好的:
- 选择两个不同的下标 i 和 j(1≤i,j≤k,i=j)以及一个非负整数 x(0≤x<230)。然后执行以下变换:
给定两个长度为 n 的数组 a 和 b,其中元素均为不超过 m 的非负整数。你可以对这两个数组进行任意次以下两种操作:
- 选择一个下标 i(1≤i≤n),令 ai:=ai+1
- 选择一个下标 i(1≤i≤n),令 bi:=bi+1
注意在执行操作过程中,a 和 b 的元素可能会超过 m。
求使得数组对 (a,b) 成为好的数组对所需的最小操作次数。
输入格式
每个测试包含多个测试用例。第一行输入测试用例数量 t(1≤t≤104)。接下来描述每个测试用例。
每个测试用例的第一行输入两个整数 n 和 m(1≤n,m≤2×106)——分别表示数组 a 和 b 的长度,以及数组中元素的最大初始值。
第二行输入 n 个整数 a1,a2,…,an(0≤ai≤m)——表示数组 a。
第三行输入 n 个整数 b1,b2,…,bn(0≤bi≤m)——表示数组 b。
保证所有测试用例的 n 总和与 m 总和均不超过 2×106。
输出格式
对于每个测试用例,输出一个整数——使得数组对 (a,b) 成为好的数组对所需的最小操作次数。
输入输出样例
输入#1
5 4 3 0 1 2 3 0 1 2 3 3 32 8 9 32 8 6 32 5 64 5 7 16 32 64 4 8 16 32 64 4 11 9 1 4 3 8 11 6 2 5 10 7 9 5 4 2 3 10 6 5 9
输出#1
0 2 2 0 1
说明/提示
第一个测试用例中,已有 a=b。
第二个测试用例中,可以对下标 i=2 执行两次操作 2。数组 b 将变为 [8,8,32],此时 (a,b) 成为好的数组对。
第三个测试用例中,可以对下标 i=1 执行一次操作 2,再对下标 i=2 执行一次操作 1。可以证明无法用少于 2 次操作使 (a,b) 成为好的数组对。
翻译由 DeepSeek R1 完成
输入解题思路,AI测评打分。不知道怎么写?