#P3000. 序列加法机

序列加法机

题目描述

有一个“序列加法机”,它的作用是把一个长度为 nn 的单调不降序列 aa 转换成另一个长度为 nn 的单调不降序列 bb。不过由于序列加法机的功能还不完善,现在它只能执行不超过 mm 次以下操作:

选择一个 1≤i≤n1\le i\le n 和一个整数 xx,将 aia_i 加上 xx(xx 可以 <0<0),操作代价是 x2x^2,并且序列加法机还需要保证每次操作完成后,aa 依然是单调不降的。那么序列加法机最少需要多少代价才能将 aa 转换成 bb?

输入格式

第一行,两个正整数 n,mn,m。

接下来两行,每行 nn 个数,分别表示 aa 和 bb。

输出格式

一个数,表示最小代价,对 998244353998244353 取模。

无解输出 −1-1。

样例

3 4
1 2 3
2 4 5
7
5 3
1 4 8 11 13
2 3 9 11 12
-1
5 2
1 7 11 15 22
2 7 11 18 22
10

说明/提示

数据规模与约定

  • 对于 10%10\% 的数据,n≤5n \le 5, m,∑∣ai−bi∣≤10m, \sum |a_i - b_i| \le 10
  • 对于 50%50\% 的数据,n,m≤300n,m \le 300
  • 对于 100%100\% 的数据,1≤n,m≤1051 \le n,m \le 10^5,0≤ai,bi≤1090 \le a_i, b_i \le 10^9,保证 {a}\{a\},{b}\{b\} 两个序列单调不降