欢迎光临散文网 会员登陆 & 注册

数的排列相加

2021-11-27 16:37 作者:进击的水瓶  | 我要投稿

/*事先声明:本文是以深搜算法为基础写出,用于计算自然数以自然数组合相加的方法,编译语言为C++,使用编辑器为DevC++ 5.11,如有侵权请及时联系,会立即删除。在未经本人许可禁止用于商用,改写,感谢支持!*/ 

#include<bits/stdc++.h>

using namespace std;

int n=0,c[101]={ },z=1,t=0,s=0;

int cf(int a,int b){

for(int i=c[b-1];i<=a;i++){

if(i<n){c[b]=i;a-=i;

if(a==0){s++;cout<<"<"<<s<<">"<<" ";printf("%d=",n);

for(int o=1;o<b;o++){printf("%d+",c[o]);}

printf("%d\n",c[b]);}

else{cf(a,b+1);}a+=i;}}}

int main(){

c[0]=1;

cout<<"请输入要组成的数(x<=70):";

cin>>n;

cf(n,1);

cout<<s;

return 0;} 


数的排列相加的评论 (共 条)

分享到微博请遵守国家法律