A59727.[NOI2025] 序列变换
省选/NOI-
通过率:0%
时间限制:6.00s
内存限制:1024MB
题目描述
给定两个长度为 n 的整数序列 B=[b1,…,bn],C=[c1,…,cn]。对于长度为 n 的非负整数序列 D=[d1,…,dn],设 S(D) 为所有满足 di=0 的下标 i 的集合,定义 f(D)=∑i∈S(D)bi,g(D)=∏i∈S(D)ci。特别地,若 S(D) 为空,则 f(D)=0,g(D)=1。
小 L 有一个长度为 n 的 正整数序列 A=[a1,…,an]。小 L 可以对序列 A 做如下修改:
- 选择序列 A 的两个 相邻 的下标 i,j(即 1≤i,j≤n 且 ∣i−j∣=1),若 ai≤aj,则将 aj 改为 aj−ai,同时将 ai 改为 0。
小 L 可以进行任意多次修改操作,也可以不进行任何修改。对于所有序列 A 通过以上修改操作可以得到的序列 D,小 L 想求出 f(D) 的最大值以及 g(D) 之和,请你帮助他求出这两个值。形式化地,记 T(A) 为序列 A 通过以上修改操作可以得到的 所有序列的集合,你需要求出 maxD∈T(A)f(D) 以及 ∑D∈T(A)g(D)。其中,由于 ∑D∈T(A)g(D) 可能较大,你只需要求出其对 1,000,000,007 取模后的结果。
说明/提示
评分方式
对于每个测试点:
- 正确回答所有测试数据的 maxD∈T(A)f(D),可获得该测试点 40% 的分数;
- 正确回答所有测试数据的 ∑D∈T(A)g(D) 对 1,000,000,007 取模后的结果,可获得该测试点 60% 的分数。
注意:即使选手仅回答了其中一个问题,也需要按照输出格式输出两个整数,分别对应两个问题的答案。
附加文件来自于 QOJ。
输入格式
本题包含多组测试数据。
输入的第一行包含两个非负整数 c,t,分别表示测试点编号与测试数据组数。c=0 表示该测试点为样例。
接下来依次输入每组测试数据,对于每组测试数据:
- 第一行包含一个正整数 n,表示序列长度。
- 第二行包含 n 个正整数 a1,…,an,表示序列 A。
- 第三行包含 n 个整数 b1,…,bn,表示序列 B。
- 第四行包含 n 个正整数 c1,…,cn,表示序列 C。
输出格式
对于每组测试数据,仅输出一行,其中包含两个整数,分别表示 maxD∈T(A)f(D) 以及 ∑D∈T(A)g(D) 对 1,000,000,007 取模后的结果。注意:maxD∈T(A)f(D) 不需要对 1,000,000,007 取模。
输入输出样例
输入#1
0 3 3 5 6 6 3 6 9 1 2 3 6 1 1 4 5 1 4 -1 1 -1 1 -2 2 1 1 1 1 1 1 8 4 2 4 2 2 2 4 4 -2 4 9 -3 4 8 7 8 1 1 1 1 1 1 1 1
输出#1
15 10 1 18 37 48
说明/提示
样例 1 解释
该样例共包含三组测试数据。
对于第一组测试数据,可以得到以下 4 个序列:
- D=[5,6,6],f(D)=0,g(D)=1;
- D=[0,1,6],f(D)=3,g(D)=1;
- D=[5,0,0],f(D)=6+9=15,g(D)=2×3=6;
- D=[0,0,5],f(D)=3+6=9,g(D)=1×2=2。
故 maxD∈T(A)f(D)=max{0,3,15,9}=15,∑D∈T(A)g(D)=1+1+6+2=10。
样例 2
该样例满足测试点 3、4 的约束条件。
样例 3
该样例满足测试点 5、6 的约束条件。
样例 4
该样例满足测试点 7 的约束条件。
样例 5
该样例满足测试点 11、12 的约束条件。
样例 6
该样例满足测试点 16∼18 的约束条件。
设 N 为单个测试点内所有测试数据的 n 的和。对于所有测试数据,保证:
- 1≤t≤20;
- 1≤n≤5,000,N≤4×104;
- 对于所有 1≤i≤n,均有 1≤Ai≤109;
- 对于所有 1≤i≤n,均有 −109≤Bi≤109;
- 对于所有 1≤i≤n,均有 1≤Ci≤109。
测试点编号 | n≤ | N≤ | 特殊性质 |
---|---|---|---|
1,2 | 8 | 102 | 无 |
3,4 | 200 | 400 | B |
5,6 | 200 | 400 | 无 |
7 | 500 | 103 | A |
8∼10 | 500 | 103 | B |
11,12 | 500 | 103 | 无 |
13 | 3500 | 3×104 | A |
14,15 | 3500 | 3×104 | B |
16∼18 | 3500 | 4×104 | 无 |
19,20 | 5000 | 4×104 | 无 |
- 特殊性质 A:保证 A1=A2=⋯=An=1。
- 特殊性质 B:保证对于所有 1≤i≤n,Ai 均在 [1,109] 中 独立均匀随机 生成。