呵呵,第一次写Blog,请大家多多关照。。。```
这次先写点简单的回溯 递归哈。
「问题描述」
输入自然数n,然后将其拆分成由若干数相加的形式,参与加法运算的有选举权可以重复。
输入:待拆分的自然数n。
输出:若干数的加法式子。
「样例输入」
7
「样例输出」
7=1+6
7=1+1+5
7=1+1+1+4
7=1+1+1+1+3
7=1+1+1+1+1+2
7=1+1+1+1+1+1+1
7=2+2+2+2+2
7=2+2+2+3
7=2+2+4
7=2+2+2+2
7=3+3+3
7=2+5
7=2+2+3
7=3+4
「问题分析」
很明显这是一道关于数的组合的问题,但形成组合的数是有一定限制的。仔细分析一下题目,我们可以得到以下的结论。
<1>每一组数之和必须等于n。
<2>每一组数的个数是不固定的。
<3>等式中后一个数的大小必定大于或等于前一个数,因为这样做的目的有两个,一是能够避免等式的重复,二是可以减少不必要的搜索,提高程序效率。
在进行算法设计进我们必须注意两点,一是需要解决如何记录某一路径可取数的问题。为了解决这一问题,本程序加