摘要:
题目的原型来自于前段时间在论坛上看到的一道水友分享的一道卓越亚马逊的笔试算法题,题目如下:每个大于1的数字都可以由其他数字相加组合而成,例如:5=1+4, 5=2+3;7=1+6, 7=2+5, 7=3+4;现要求输入正整数n(n<50),输出所有除n本身外正数相加的不重复组合【例如】输入:6输出:6=1+56=2+4【分析:】 拿到这个题首先想到的方法通常是1~n数字的全排列组合,比如1+2+3...、1+2+4...,然后尝试每种排列结果是否等于n。这个思路没有错,但是代码写起来较麻烦,组合的过程也要考虑很多东西。刚开始我也是这么尝试,用循环加递归的方法,从1开始每次换一个数作为开始 阅读全文
posted @ 2013-04-26 16:52
ErwinZ
阅读(670)
评论(0)
推荐(0)

浙公网安备 33010602011771号