5 条题解
-
-1
#include<bits/stdc++.h> using namespace std; int n , A[30]; void dfs(int u , int sum){ if (u > n){ return ; } if (u == n){ cout << n << "="; for (int i = 1;i < sum;i++){ if (i == sum - 1){ cout << A[i]; break; }else { cout << A[i] << "+"; } } cout << endl; return ; }
if (sum > n){ return ; } for (int i = A[sum - 1];i < n;i++){ A[sum] = i; dfs(u + i , sum + 1); }} int main(){ freopen("split.in", "r", stdin); freopen("split.out", "w", stdout); cin >> n; A[0] = 1; dfs(0 , 1); return 0; }
信息
- ID
- 532
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 7
- 标签
- (无)
- 递交数
- 135
- 已通过
- 35
- 上传者