| 比赛 | 
    NOIP2015普及组练习 | 
    评测结果 | 
    WWWWWWWWWW | 
    | 题目名称 | 
    分组 | 
    最终得分 | 
    0 | 
    | 用户昵称 | 
    AOA | 
    运行时间 | 
    0.011 s  | 
    | 代码语言 | 
    C++ | 
    内存使用 | 
    0.12 MiB  | 
    | 提交时间 | 
    2015-11-03 08:18:55 | 
显示代码纯文本
#include<iostream>
#include<cstdlib>
#include<stdio.h>
using namespace std;
int a[10]={0};
int depth=0;
void dfs(int n,int m,int n1)
{  	
    if(m==1)
    {
        for(int i=depth-1;i>0&&a[i]!=0;i--)
            cout<<a[i]<<" ";
        cout<<n<<endl;
        return;
    }
    a[m-1]=n1;
    if(n1*2>n) return;
    dfs(n-n1,m-1,n1);
    dfs(n,m,n1+1);
}
int main()
{   freopen("dataa.in","r",stdin);
    freopen("dataa.out","w",stdout);
    int n;
    cin>>n>>depth; 
    dfs(n,depth,1); 
    return 0;
}