题目背景

出题人:XL4453
验题人:犇犇犇犇
文案:小糯米
upd:注意,先取模再取max
题目描述
“别介意,我和那些家伙都是打捞者。我们在头一次追寻梦想降落到地表时,就做好丧命的准备和赴死的觉悟了。”
葛力克一行人在一次打捞中,时来运转,获得了不少的宝藏。在归途之路,言及谁的功劳最大之时,大家却起了冲突。有人说自己的宝藏是史上绝无仅有,是在鬼门关前绕了一大圈才好不容易抢到的一个;有人说自己惨淡经营,虽然没有获得那么珍贵的宝物,但数量可观,也足以与之相提并论;也有人说自己的收获二者兼有,应当综合评价云云:总之,场面一片混乱,颇有生死与共的患难之交从此决裂的危险。
于是,大家把目光投到了葛力克的身上,这让他十分为难。思索良久,他决定这样来评价大家的贡献:
假设一共有 n 名打捞者,第 i 位打捞者 ai 取得的宝物数量为 li ,而其中第 p 件宝物对应的价值则为 ai,p ,那么在计算的时候只需要将每个序列相加求和即可。但是葛力克并不满足于现状,他现在想知道,如果是将两个人的贡献放在一起看待,那么又将如何计算呢?
一番激烈的头脑风暴后,他决定这样来计算两位打捞者 i,j 之间的贡献 g(i,j) :将 ai 与aj 分别复制数遍使得两堆宝物的数量都为 k ,得到两个序列 ai′,aj′ ,则 g(i,j)=p=1∑kai,p′×aj,p′ 。
现在葛力克想知道,这个贡献值的最大值是多少。
因为贡献值可能会很大,超出了正常生物大脑的运算能力,所以我们对它进行 998244353 的取余。
形式化题面:给定一个整数 n,和 n 个序列,第 i 个序列 {ai} 长度为 li,将每个 ai 复制 lik 遍得到 {ai′} 使得 {ai′} 的长度为 k。
试求:i=1,j=i+1maxi,j≤n{g(i,j)mod998244353},其中g(i,j)=p=1∑kai,p′×aj,p′ 。
输入格式
第一行两个整数 n,k。
接下来输入 n 行。第 i+1 行第一个数为 li,接下来输入 li 个数,表示打捞者的宝藏 ai。
输出格式
一个整数,表示所求的最大值。
提示
样例解释 #1
a1′=2,3,4,2,3,4,2,3,4,2,3,4。
a2′=1,2,3,4,1,2,3,4,1,2,3,4。
g(1,2)=2×1+3×2+4×3+2×4+3×1+4×2+2×3+3×4+4×1+2×2+3×3+4×4=90。
样例解释 #2
g(1,2)mod998244353=599517664。
g(1,3)mod998244353=350889018。
g(2,3)mod998244353=66930325。
1≤i<j≤nmax{g(i,j)mod998244353}=599517664。
数据范围
对于 10% 的数据,有 n=2。
对于 30% 的数据,有 k≤100。
对于 60% 的数据,所有 li 两两互质,即 gcd(li,lj)=1(1≤i<j≤n),gcd 为最大公约数。
对于 100% 的数据,有 1≤n≤100,1≤li≤1000,1≤k,ai,j≤109 且对于任意的 i∈[1,n],li∣k。