80分,玄1关
  • 板块P2089 烤鸡
  • 楼主zyhe2013
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/1/27 22:24
  • 上次更新2024/1/27 22:24:42
查看原帖
80分,玄1关
905073
zyhe2013楼主2024/1/27 22:24
#include<bits/stdc++.h>
using namespace std;

int n,cnt,ans[5005][15],sum,a[15];
void dfs(int x,int sum)
{
    if(x>10)
    {  
        int num=a[1]+a[2]+a[3]+a[4]+a[5]+a[6]+a[7]+a[8]+a[9]+a[10];
        if(num==n)
        {
            cnt++;
            for(int i=1;i<=10;i++)ans[cnt][i]=a[i];
        }
        return;
    }
    for(int i=1;i<=3;i++)
    {
        if(sum+i>n) break;
        a[x]=i;
        dfs(x+1,sum+i);
        a[x]=0;
    }    
}

int main()
{
    cin>>n;
    dfs(1,0);
    cout<<cnt<<"\n";
    for(int i=1;i<=cnt;i++)
    {
        for(int j=1;j<=10;j++)cout<<ans[i][j]<<" ";
        cout<<"\n";
    }
    return 0;
} 

9,10WA

2024/1/27 22:24
加载中...