admin 管理员组

文章数量: 1087675

PTA不能用循环是一件多么悲伤的事

 深度优先搜索,分两个参数,第一个参数表示第一个加数,第二个同理,

分别搜索参数1合法匹配的加数,若二者之和大于输入的n,那么退出

继续搜索参数1加1的情况,若参数1大于n那么不可能在有解,结束搜索

#include <bits/stdc++.h>
using namespace std;
int n;
void dfs(int k,int m)
{if(k>n)return;if(k+m<=n){printf("%-2d+%2d = %-2d ",k,m,k+m);dfs(k,m+1);}else{cout<<endl;dfs(k+1,0);}
}
int main()
{cin>>n;dfs(0,0);
}

本文标签: PTA不能用循环是一件多么悲伤的事