硬币划分问题
来源:互联网 发布:网络印刷平台 编辑:程序博客网 时间:2024/06/05 20:57
硬币划分问题
硬币划分问题应该是最最经典的一类组合数学的问题,问题如下:
要给人家10块钱,手里有很多1元,2元,5元和10元的硬币,问有多少种方法?
虽说没有2元5元10元的硬币,不过也没说是RMB呀。怎么办呢,小学生说好我来设未知数,于是写下了
于是小学生开始了列举,而我默默打开了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 coordinatesxi 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
随意组合的话一共有
1元:
2元:
5元:
10元:
乘起来?
我的妈这么多,不过我们找找我们的小目标10块钱,唔,系数是4,很好,小学生过来数一数哪四种?
1+1+1+2+5
1+2+2+5
5+5
10
没了,嗯,的确没了,结果貌似很对。验证一下前面的,如果是无数的钱怎么办?于是写下了
这tm怎么算!劳驾Mathematica吧,无穷的也算不动啊。还好,我们只要求
唔这个Mathematica还是可以算的,直接泰勒展开到第10项。
完美,答案是11。
然而如果要凑100呢,凑1000呢,有没有通用的办法呢?
无穷的数列和貌似很熟悉,
天呐世界都清爽了,那么这个玩意的第n项的系数就是无数的硬币凑成n元的方法数了,嗯,好棒。所以这玩意叫啥,叫生成函数。
- 硬币划分问题
- 硬币问题
- 硬币问题
- 硬币问题
- 硬币问题
- 硬币问题
- 硬币问题
- 硬币问题
- 硬币问题
- 硬币问题
- 硬币问题
- 硬币问题
- 硬币问题
- 硬币问题
- 硬币问题
- 硬币问题
- 硬币问题
- 硬币问题
- eclipse下配置Hibernate5.2.7
- Beego的ORM插入Mysql后,时区不一致的解决方案
- 84. Largest Rectangle in Histogram
- 当你的xml配置文件出问题的时候
- 小鱼比可爱
- 硬币划分问题
- 卡特兰数总结(转)
- Markdown的使用
- 策略模式与状态工厂,简单工厂的恩怨
- (原)SQL Server 系统提供功能的三个疑惑
- [android] 开源项目研究.md
- Project Euler 006 Sum square difference
- Maven的Windows安装指南
- 你离心想事成只差一个计划 | 进击