XSY2759

题意

\(n\)种不同的硬币,不限制个数,两两为倍数关系。求取\(m\)元的方案数。\((n\le 50,m\le 10^{18})\)

做法

按面值排序
\(f_i(x)\)为取完前i种后,取走\(a_i*x+m\%a_i\)
\(f_i(x)=\sum\limits_{k=0}^x f_{i-1}(\frac{a_i*k+m\%a_i}{a_{i-1}})=\sum\limits_{k=0}^x f_{i-1}(\frac{a_i}{a_{i-1}}*k+\frac{m\%a_i}{a_{i-1}})\)
显然\(f_i(x)\)是关于\(x\)\(i\)次多多项式

猜你喜欢

转载自www.cnblogs.com/Grice/p/12631493.html