#4169. 数的拆分

数的拆分

以下是整理后的题目格式:

问题描述

输入一个整数 nn,输出将 nn 拆分成若干正整数和的所有方案,即 n=S1+S2++Skn = S_1 + S_2 + \dots + S_k 的形式,且满足 S1S2SkS_1 \leq S_2 \leq \dots \leq S_k。请按照字典序输出所有拆分方案。

输入格式

  • 一行输入一个整数 nn,满足 nleq20n leq 20

输出格式

  • 输出所有拆分方案,具体格式参见输出样例。
  • 在所有方案输出完后,输出拆分方案的总数。

输入样例

4

输出样例

1 + 1 + 1 + 1
1 + 1 + 2
1 + 3
2 + 2
4
total = 5

解释

  • 对于输入 n=4n = 4,所有拆分方案按照字典序输出,并且输出总共的拆分数 55