#P15554. [CCPC 2025 哈尔滨站] Many Many Sequence Covering Problems

[CCPC 2025 哈尔滨站] Many Many Sequence Covering Problems

题目描述

考虑以下两个问题:

Sequence Covering Problems\textbf{Sequence Covering Problems}

在该问题中,初始会给出三个长度为 nn 的非负整数序列 a,b,ca,b,c,每次可以用 bl+crb_l+c_r 的代价选择区间 [l,r][l,r],满足 al,al+1,,ara_l,a_{l+1},\cdots,a_r 的最小值不为 00,将 al,al+1,,ara_l,a_{l+1},\cdots,a_r 全部减去 11,目标是用最小的代价将 aa 中的所有数变为 00

Many Sequence Covering Problems\textbf{Many Sequence Covering Problems}

在 Sequence Covering Problems 的基础上,给出两个非负整数序列 d,ed,e,现在可以做以下操作任意次:选择 i[1,n]i\in[1,n],花费 did_i 的代价让 bib_i 增大 11,或花费 eie_i 的代价让 cic_i 增大 11。在所有操作结束后,对操作后的 b,cb,c 序列求解其 Sequence Covering Problems,设其答案为 PP,花费的代价为 QQ,你需要最大化 PQP-Q 的值,如果这个值可以是无限大,请输出 INF,否则请给出这个最大值。

现在你要解决 Many Many Sequence Covering Problems\textbf{Many Many Sequence Covering Problems}

给出五个长度为 nn 的残缺序列 A,B,C,D,EA,B,C,D,E,规定若 Ai0A_i\ge 0,则 AiA_i 的值已经给出,否则认为 AiA_i 的取值范围为 [0,Ai][0,-A_i],对于 B,C,D,EB,C,D,E 序列同理。

你需要求出所有可能的情况下,其对应的 Many Sequence Covering Problems 的答案之和。由于答案可能是 INF,所以你需要分别给出,当答案不为 INF 时所有的答案之和,以及有多少种情况其对应的答案为 INF。由于答案可能很大,答案对 998244353998244353 取模。

输入格式

输入第一行包含一个整数 nn (1n50001 \le n \le 5000),表示序列的长度。

输入第二行包含 nn 个整数 A1,A2,,AnA_1,A_2,\ldots,A_n (0Ai50000 \le |A_i| \le 5000)。

输入第三行包含 nn 个整数 B1,B2,,BnB_1,B_2,\ldots,B_n (0Bi50000 \le |B_i| \le 5000)。

输入第四行包含 nn 个整数 C1,C2,,CnC_1,C_2,\ldots,C_n (0Ci50000 \le |C_i| \le 5000)。

输入第五行包含 nn 个整数 D1,D2,,DnD_1,D_2,\ldots,D_n (0Di50000 \le |D_i| \le 5000)。

输入第六行包含 nn 个整数 E1,E2,,EnE_1,E_2,\ldots,E_n (0Ei50000 \le |E_i| \le 5000)。

输出格式

输出只有一行,包含两个整数,分别表示当答案不为 INF 时,所有的答案之和对 998244353998244353 取模后的值,对应的答案为 INF 的情况数对 998244353998244353 取模后的值。

2
1 1
1 2
2 1
-1 -1
-1 -1
8 12
3
-1 -2 2
1 3 0
-3 0 -2
1 -3 0
1 3 3
408 228