1 条题解

  • 0
    @ 2025-6-23 16:02:40

    话不多说,直接上代码

    //禁止抄袭,从我做起
    #include<bits/stdc++.h>
    using namespace std;
    
    int n,s[101];
    void f(int x,int y)
    {
    	if(x>n) return;
    	if(x==n)
    	{
    		cout<<n<<'=';
    		for(int i=1;i<=y-2;i++) cout<<s[i]<<'+';
    		cout<<s[y-1]<<endl;
    
        while(1)
    		return;
    	}
    	for(int i=s[y-1];i<n;i++)
    	{
    		s[y]=i;
    		f(x+i,y+1);
    	}
    }
    int main()
    {
    	cin>>n;
    	s[0]=1;
    	f(0,1);
    	return 0;
    }
    

    禁止抄袭哦,提交上去错了别怪我没提醒你们。当然,代码里面藏了一个小小的TLE 嘻嘻嘻嘻

    • 1

    信息

    ID
    437
    时间
    1000ms
    内存
    256MiB
    难度
    6
    标签
    递交数
    45
    已通过
    15
    上传者