Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
100459 柯昊阳 拆分自然数 C++ 通过 100 277 MS 252 KB 446 2023-08-26 17:26:57

Tests(5/5):


#include<bits/stdc++.h> using namespace std; int a[100],n,m; int cnt = 0; void dfs(int cur,int sum) { if(sum==n) { cout<<n<<"="; for(int i=1; i<=cur-1; i++) { cout<<a[i]; if(i!=cur-1)cout<<"+"; } cout<<endl; cnt++; return ; } for(int i=a[cur-1];i<=n-1; i++){ if(sum+i<=n) { a[cur]=i; dfs(cur+1,sum+i); } } } int main() { cin>>n; a[0] = 1; dfs(1,0); cout<<cnt<<endl; return 0; }


测评信息: