小豆喜欢玩游戏,现在他在玩一个游戏遇到这样的场面,每个怪的血量为(a_i),且每个怪物血量均不相同,小豆手里有无限张“亵渎”。亵渎的效果是对所有的怪造成(1)点伤害,如果有怪死亡,则再次施放该法术。我们认为血量为(0)怪物死亡。
小豆使用一张 “亵渎”会获得一定的分数,分数计算如下,在使用一张“亵渎”之后,每一个被亵渎造成伤害的怪会产生(x^k),其中(x)是造成伤害前怪的血量为(x)和需要杀死所有怪物所需的“亵渎”的张数(k)。
对于(100\%)的数据,有(mleq50,nleq10^{13})
首先我们发现这是一道语文题
大概意思是每一次使用亵渎都会得到(sumlimits_{i=1,iin monster}^{n}hp(i)^k)的贡献,其中(k=m+1-)结尾空位
我们发现暴力复杂度瓶颈在于求(sumlimits_{i=1}^{n}i^k)这么个东西
然而它是一个(k+1)次多项式(我才懒得证),我们选(k+2)个点拉格朗日插值就好了
每次插值求出(sumlimits_{i=1}^{n}i^k),再暴力把后面的空位置的贡献删去就好了