硬币划分问题
硬币划分问题应该是最最经典的一类组合数学的问题,问题如下:
要给人家10块钱,手里有很多1元,2元,5元和10元的硬币,问有多少种方法?
虽说没有2元5元10元的硬币,不过也没说是RMB呀。怎么办呢,小学生说好我来设未知数,于是写下了 a+2b+5c+10d=10 ,然后写了一句,求出其解的个数即可。唔,我服!
于是小学生开始了列举,而我默默打开了Mathematica,唔,不定方程又称丢潘图方程(Diophantine Equations)所以,找到了Frobenius Equations。
A Frobenius equation is an equation of the form
∑ni=1aixi=m
where ai are positive integers, m is an integer, and the coordinates xi of solutions are required to be non-negative integers.
于是一共有11种。
那和这题有什么关系吗?还是不会做。
等等,如果我们没有很多钱呢,如果每种钱只有3张,那么穷举一下也不怎么费劲吧,试试看。
1元:0,1,2,3
2元:0,2,4,6
5元:0,5 ,10,15
10元:0,10,20,30
随意组合的话一共有 44=256 种欸。话说这种组合是把每个的情况数相乘,感觉和多项式相乘有点像,每个都乘起来,用多项式表示试试?幂表示能凑的数,系数表示能凑多少。乘起来的话,幂正好是相加的,然后系数也是不同凑的方法加起来,简直棒啊。
1元: 1+x+x2