题目背景
神龟虽寿,犹有竟时;腾蛇乘雾,终为土灰。老骥伏枥,志在千里;烈士暮年,壮心不已。
——曹操《龟虽寿》
题目描述
给定长度为 n 的序列 (a1,a2,…,an),定义函数 w(l,r) 为:
$$w(l,r)= \gcd(a_l,a_{l+1},\dots,a_{r})\times \sum_{i=l}^r b_i
$$
定义序列选择互不相交的 m 段(m>0)区间 [l1,r1],[l2,r2],…,[lm,rm](即 ∀i∈[1,m),ri<li+1)的代价为:
i=1∑mw(li,ri)
定义好的选择为 $\forall i\in [1,m], r_{i}-l_{i}+1\ge \gcd(a_{l_i},a_{l_i+1},\dots,a_{r_i})\ge r_{i-1}-l_{i-1}+1$。其中,l0=r0=0。
选择 m 段的额外代价是 mC,其中 C 为给定的常数。
试求 a 序列的好的选择的最小代价。
输入格式
本题有多组数据。
第一行一个整数 T,表示数据组数。
对于每组数据:
第一行两个整数 n,C。
第二行 n 个整数,第 i 个整数表示 ai。
第三行 n 个整数,第 i 个整数表示 bi。
输出格式
一行一个整数,表示最小代价。
1
6 -7
1 1 4 5 1 4
1 9 1 9 8 10
-6
提示
对于 100% 的数据,1≤n≤105,1≤ai≤105,0≤bi≤105,−109≤C≤109。保证至少能够选择一段。
测试点 |
T |
特殊性质 |
1 |
103 |
n≤10 |
2 |
5 |
C≥0 |
3,4 |
n≤300 |
5 |
n≤1000 |
6∼10 |
n≤105 |