Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
108730 梁乃元 拆分自然数 C++ 通过 100 290 MS 260 KB 601 2023-11-04 09:47:57

Tests(5/5):


#include<bits/stdc++.h> using namespace std; int pl [114514] = { 1 } ; int x , tot = 0 ; void dfs ( int a , int k ) { for ( int i = pl [k - 1] ; i <= a ; i ++ ) { if ( i < x ) { a -= i ; pl [k] = i ; if ( a == 0 ) { cout << x << '=' ; for ( int j = 1 ; j < k ; j ++ ) { cout << pl [j] << '+' ; } cout << pl [k] << endl ; tot += 1 ; return ; } else { dfs ( a , k + 1 ) ; } a += i ; pl [k] = 0 ; } } return ; } int main() { cin >> x ; dfs( x,1 ) ; cout << tot << endl ; return 0 ; }


测评信息: