#P15848. [NOISG 2026 Finals] Famished Cats

    ID: 18384 远端评测题 1000ms 1024MiB 尝试: 0 已通过: 0 难度: 7 上传者: 标签>贪心优先队列2026NOISG(新加坡)

[NOISG 2026 Finals] Famished Cats

题目描述

在一年一度的全国爱猫日庆祝活动中成功阻止了猫的灭绝后,猫 Ket 现在收到了来自食猫王国的饥饿投诉。因此,Ket 被委派去运送食物,以防止它们再次诉诸同类相食。

这个猫王国可以被建模为一条从西向东延伸的漫长道路。道路的西端有一个食物银行。食物银行以东有 nn 间猫屋,编号从 11nn。保证 nn偶数。第一间房子位于食物银行以东 d[1]d[1] 公里处。对于 i2i \geq 2,第 ii 间房子位于第 (i1)(i - 1) 间房子以东 d[i]d[i] 公里处。

Ket 将驾驶一辆送货车向这些房子运送食物。卡车从食物银行出发,初始拥有 xx 单位的燃料。1 单位燃料允许 Ket 驾驶他的卡车沿道路行驶 1 公里。

ii 间房子有 f[i]f[i] 单位的燃料可供卡车使用。卡车拥有无限的燃料存储空间,并且只在燃料耗尽时才会停下。卡车离开后无需返回食物银行。

:::align{center} :::

此外,Ket 拥有一根魔杖。挥动一次魔杖,他可以 交换ii 间和第 (ni+1)(n - i + 1) 间猫屋中储存的燃料量。只有当两个房子中的燃料都尚未被使用时,才能进行此交换。请帮助 Ket 找到他使用任意次数交换后能够到达的最远房子的索引 DD。同时,请帮助 Ket 找到到达房子 DD 所需的最小交换次数 SS

你可以参考样例测试 #1 以获得更详细的解释。

输入格式

你的程序需要从标准输入读取数据。

输入的第一行包含两个由空格分隔的整数 nnxx

输入的第二行包含 nn 个由空格分隔的整数 d[1],d[2],,d[n]d[1], d[2], \dots, d[n]

输入的第三行包含 nn 个由空格分隔的整数 f[1],f[2],,f[n]f[1], f[2], \dots, f[n]

输出格式

你的程序需要向标准输出写入数据。

在一行中输出 两个 由空格分隔的整数。第一个整数应为 DD,即 Ket 能到达的最远房子的索引,接着是 SS,即到达房子 DD 所需的最小交换次数。

6 1
1 1 3 1 1 6
1 1 1 4 3 2
5 1
6 5
3 8 3 1 4 1
2 7 1 6 2 7
6 1
6 2
2 24 25 40 5 11
4 12 14 16 20 30
3 2
6 10
3 6 3 7 8 6
4 3 1 7 1 6
5 1

提示

样例测试 #1 解释

:::align{center} :::

有一个食物银行,其东边有 n=6n = 6 间房子。Ket 的卡车以 x=1x = 1 单位燃料出发,行驶到房子 11。然后他在房子 11 补充燃料,并行驶到房子 22。此时,Ket 最优的做法是使用他的魔杖交换房子 22 和房子 55 的燃料量,这使他能够补充 33 单位燃料并到达房子 33。随后,他可以在前往接下来两间房子的途中补充 11 单位燃料,并分别在房子 44 和房子 55(由于之前的交换)补充 44 单位和 11 单位燃料。

之后他将剩下 44 单位燃料,这使他无法前往房子 66,因为那需要 66 单位燃料。由于 Ket 在到达房子 66 之前耗尽了燃料,他只能到达房子 55。此外,他必须使用魔杖进行一次交换。因此,D=5D = 5S=1S = 1

子任务

对于所有测试用例,输入数据满足以下限制:

  • 2n5000002 \leq n \leq 500\,000
  • nn 是偶数。
  • 对于所有 1in1 \leq i \leq n,有 1d[i]1091 \leq d[i] \leq 10^9
  • 对于所有 1in1 \leq i \leq n,有 1f[i]1091 \leq f[i] \leq 10^9
  • d[1]x109d[1] \leq x \leq 10^9

你的程序将在满足以下限制的输入实例上进行测试:

子任务 分数 额外约束条件
0 样例测试用例
1 7 对于所有 1in1 \leq i \leq nf[i]f[ni+1]=k\vert f[i] - f[n - i + 1] \vert = k 对于某个常数 kk 成立
2 12 n40n \leq 40
3 14 ff 是非递减的(对于所有 1in11 \leq i \leq n - 1,有 f[i]f[i+1]f[i] \leq f[i + 1]
4 19 Dn2D \leq \frac{n}{2}
5 21 n5000n \leq 5000
6 27 无额外约束

注意:一个数 xx 的绝对值,记作 x\vert x \vert,是 00xx 在数轴上的距离的非负数。例如,5=5\vert 5 \vert = 55=5\vert -5 \vert = 5

翻译由 DeepSeek V3.2 完成