摘要:
今天淘宝海笔时碰到的一道题。题目大概是这样叙述的:n个鸡蛋放到m个篮子,每个篮子不能空,要求满足:给定任意一个小于n的数量,几个篮子的鸡蛋数加起来就可以等于它。要求输入n和m,求出满足要求的所有可行的鸡蛋放法。偶是个小菜鸟,想了10多分钟,效率不怎么高,貌似还算可行,回来后写了下程序。偶的思路大体是这样的。先将问题转换一下描述,就是给定两个正整数n和m,对于任一个小于n的正整数x都可以表示成这m个数的部分和,求出满足这个要求的m个数有多少种。经过我的分析发现,这m个数的最大值不超过n/2(上取整),而且除了最后两个数不是1之外其他的m-2个数均是1,可是我当时不会证明这个想法对不对。就采用了这 阅读全文
posted @ 2011-03-27 21:41 绿豆芽33 阅读(1514) 评论(4) 推荐(1) 编辑