#P13518. [2025年队测]弗洛尔

[2025年队测]弗洛尔

题目描述

给定 nn 种物品,每种物品 ii 价值为 viv_i,个数为 cic_i

定义总价值为 i=1ncivi\sum\limits_{i=1}^nc_iv_i,你可以进行一些(可能为 00)次操作来最大化总价值。

一次操作为:选定一个 ii 满足 cixic_i \geq x_i,让 cicixic_i\gets c_i - x_ici+1ci+1+1c_{i+1}\gets c_{i+1}+ 1

输出最大的总价值对 998, ⁣244, ⁣353998,\!244,\!353 取模。

注意,你需要最大化总价值,再对 998, ⁣244, ⁣353998,\!244,\!353 取模,而不是最大化「总价值对 998, ⁣244, ⁣353998,\!244,\!353 取模的值」。

输入格式

本题有多组数据。

第一行一个正整数 id\text{id},表示该测试数据所属子任务编号。

第二行一个正整数 TT,表示数据组数。对于每组数据:

  • 输入共四行。
  • 第一行,一个正整数 nn,表示钱的种数。
  • 第二行,nn 个非负整数分别表示 v1,v2vnv_1, v_2 \dots v_n
  • 第三行,nn 个非负整数分别表示 c1,c2cnc_1, c_2 \dots c_n
  • 第四行,n1n - 1 个正整数分别表示 x1,x2xn1x_1, x_2 \dots x_{n - 1}

输出格式

输出 TT 行,每行一个整数,表示物品总价值的最大值。所有答案对 998244353998244353 取模。

样例输入 #1

0
2
2
1 5
5 1
4
10
1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000
1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000
1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000

样例输出 #1

11
172998509

样例解释 #1

对于样例的第一组数据,v=[1,5]v=[1,5]c=[5,1]c=[5,1]x=[4]x=[4]。可以选定 i=1i=1 进行一次操作,此时 c=[1,2]c=[1,2],总价值为 11+52=111\cdot 1+5\cdot 2=11,可以证明它是最大的。

数据范围/提示

本题子任务不进行捆绑,共 77 个子任务 5050 个测试点,每个测试点等分。

id=\text{id}= n\sum n\le ci,vic_i,v_i\le 特殊性质 分值
11 / 特殊性质 A 66
22 特殊性质 B 1010
33 特殊性质 C
44 300300 / 1414
55 20002000 20002000 2020
66 /
77 /
  • 特殊性质 A:xi=109x_i = 10^9
  • 特殊性质 B:xi=1x_i = 1
  • 特殊性质 C:所有 ci,vic_i, v_i 均在 [0,105][0, 10^5] 间均匀随机生成;所有 xix_i 均在 [1,105][1, 10^5] 间均匀随机生成。

对于所有数据,1t1051\le t \le 10^52n2\le nn2×105\sum n\le 2\times 10^51xi1091\le x_i\le 10^90ci,vi1090\le c_i,v_i\le 10^9