求用1,2,5这三个数不同个数组合的和为100的组合个数
摘要:
这个题目其实很简单,直接利用dfs就出来,复杂度为O(100*50*20)可是看网上一个很好的分析,时间复杂度特别小。分析: 假设a*1 + b*2 + c*5 = 100;非常容易看出c的循环次数最小,那么枚举c开始c=0, a的取值为100,98,96,94,...,4,2,0c=1,a的取值为95,93,91,89,...,5,3,1c=2,a的取值为90,88,86,...,4,2,1c=3,a的取值为85,83,81,...,5,3,1.....c=19,a的取值为5,3,1c=20,a的取值0现在看出规律了吧,100以内的偶数+95以内的奇数+90以内的偶数+。。。+5以内的奇数+ 阅读全文
posted @ 2012-03-31 20:29 buptLizer 阅读(1955) 评论(0) 推荐(0) 编辑