Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
99941 scl111104 拆分自然数 C++ 解答错误 20 273 MS 244 KB 436 2023-08-24 10:42:35

Tests(1/5):


#include<bits/stdc++.h> using namespace std; int n, p[11]={1}, cnt=0, m; void print(int aa){ cout << 3 << "="; for(int i=1; i<aa; i++) cout << p[i] << "+" ; cout << p [aa] << endl; cnt++; } void dfs(int a){ for(int i=p[a-1]; i<=m; i++){ if(i==n) continue; p[a]=i; m-=i; if(m==0)print(a); else dfs(a+1); m+=i; } } int main(){ cin >> n; m = n; dfs(1); cout << cnt; return 0; }


测评信息: