题意
小蛇是金融部部长。最近她决定制造一系列新的货币。假设她要制造的货币的面值为x1,x2,x3… 那么x1必须为1,xb必须为xa的正整数倍(b>a)。例如 1,5,125,250就是一组合法的硬币序列,而1,5,100,125就不是。不知从哪一天开始,可爱的蛇爱上了一种萌物——兔纸!从此,小蛇便走上了遇上兔纸娃娃就买的不归路。某天,小蛇看到了N只可爱的兔纸,假设这N 只兔纸的价钱分别是a1,a2…aN。现在小蛇想知道,在哪一组合法的硬币序列下,买这N只兔纸所需要的硬币数最少。买兔纸时不能找零。
1<=N<=50, 1<=ai<=100,000
分析
咋一看真的是啥思路都没。
再仔细想了一下,发现如果我从大到小制定面值的话,设当前取到的面值为x,那么无论我之前取了什么,当前所有的兔子剩下要给的钱必然都是a[i]%x。
那么我们就可以从后往前dp。
设f[i]表示当前最小面值为i时的最少付钱次数。
初值 f[i]=∑nj=1