1407: 一元二次函数(hard)
Memory Limit:256 MB
Time Limit:1.000 S
Judge Style:Text Compare
Creator:
Submit:21
Solved:1
Description
本题有两个版本,此版本和另外一个版本差异只是N的数据范围不同
给定一个长度为$N$的序列$A$,一个定值$M$,和$Q$个询问,每一个询问将会给定一个$x$。
你可以进行这样的构造:
对于每个询问,请你计算出最大的$f(x)~mod M$
(你要最大化的值为 f(x) mod M ,而不是f(x))
给定一个长度为$N$的序列$A$,一个定值$M$,和$Q$个询问,每一个询问将会给定一个$x$。
你可以进行这样的构造:
- 初始化$a = 0,b = 0,c = 0$.
- 遍历序列$A$,每次遍历将$A_i$累加到$a,b,c$三个值中的其中一个值上
- $a,b,c$都要被至少累加1次
对于每个询问,请你计算出最大的$f(x)~mod M$
(你要最大化的值为 f(x) mod M ,而不是f(x))
Input
第一行,三个整数$N,M,Q$
第二行,$N$个整数,$A_1,A_2,A_3…A_N$
第三行,$Q$个整数,$x_1,x_2,x_3…x_Q$
数据范围:
$3\leq N \leq 26$
$2 \leq M \leq 648$
$1\leq Q \leq 100$
$0\leq A_i \leq 10^6$
$0\leq x_i \leq 10^6$
第二行,$N$个整数,$A_1,A_2,A_3…A_N$
第三行,$Q$个整数,$x_1,x_2,x_3…x_Q$
数据范围:
$3\leq N \leq 26$
$2 \leq M \leq 648$
$1\leq Q \leq 100$
$0\leq A_i \leq 10^6$
$0\leq x_i \leq 10^6$
Output
一行,输出Q个整数,代表每个询问求出的最大$f(x_{i}) mod M$
Sample Input Copy
3 4 2
1 2 5
2 0
Sample Output Copy
3 2
HINT
样例中的第一个查询 $x_1 = 2$ 时,可以构造一个函数 $f(x) = 2*x^2+x+5$, mod M后得到的值为3,可以保证不会有其他构造超过这个解。第二个查询$x_2 = 0$时,构造的函数为$f(x)=5*x^2+x+2$,得到的解为2