題目描述
任何乙個大於1的自然數n,總可以拆分成若干個小於n的自然數之和。現在給你乙個自然數n,要求你求出n的拆分成一些數字的和。每個拆分後的序列中的數字從小到大排序。然後你需要輸出這些序列,其中字典序小的序列需要優先輸出。
輸入格式
輸入:待拆分的自然數n。
輸出格式
輸出:若干數的加法式子。
輸入輸出樣例
輸入
輸出1+1+1+1+1+1+1說明/提示1+1+1+1+1+2
1+1+1+1+3
1+1+1+2+2
1+1+1+4
1+1+2+3
1+1+5
1+2+2+2
1+2+4
1+3+3
1+62+2+3
2+53+4
n<=8
解題思路
用dfs深搜。一路搜到底,回溯搜尋下一方案
**
#include
using
namespace std;
int n,p[9]
=;void
print
(int t)
void
dfs(
int s,
int t)
}int
main()
洛谷P2404 自然數的拆分問題 回溯
洛谷p2404 自然數的拆分問題 回溯 第一次寫部落格,主要是給自己看的,記錄一下第一次接觸回溯法自己的理解過程,文章可能存在許多小錯誤,敬請指正 d 題目描述任何乙個大於1的自然數n,總可以拆分成若干個小於n的自然數之和。現在給你乙個自然數n,要求你求出n的拆分成一些數字的和。每個拆分後的序列中的...
洛谷 P2404 自然數的拆分問題
任何乙個大於1的自然數n,總可以拆分成若干個小於n的自然數之和。任何乙個大於1的自然數n,總可以拆分成若干個小於n的自然數之和。輸入格式 輸入 待拆分的自然數n。輸出格式 輸出 若干數的加法式子。輸入樣例 1 複製 7 輸出樣例 1 複製 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 ...
洛谷 P2404 自然數的拆分問題
任何乙個大於1的自然數n,總可以拆分成若干個小於n的自然數之和。任何乙個大於1的自然數n,總可以拆分成若干個小於n的自然數之和。輸入格式 輸入 待拆分的自然數n。輸出格式 輸出 若干數的加法式子。輸入樣例 1 複製7 輸出樣例 1 複製1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 1 ...