|洛谷|搜索|P2089 烤鸡

来源:互联网 发布:什么网络盒子最好用 编辑:程序博客网 时间:2024/05/01 21:06

https://www.luogu.org/problem/show?pid=2089

搜索即可。数组要开大一点

#include<cstdio>#include<cstring>#include<algorithm>using namespace std;#define ms(i,j) memset(i, j, sizeof i);int n = 1;int ans = 0;int map[10005][15];int h[15];int dfs(int a, int s)//dfs到了第几个点,加了s调料 {    if (a==11)     {        if(s==n)        {ans++;        for (int i=1;i<=10;i++) map[ans][i] = h[i];}    } else    for (int i=1;i<=3;i++)    {        if (s+i<=n){ h[a] = i; dfs(a+1, s+i);}    }}int main(){    scanf("%d", &n);    dfs(1,0);    printf("%d\n", ans);    for (int i=1;i<=ans;i++)    {        for (int j=1;j<=10;j++)        {            printf("%d ", map[i][j]);        }        putchar('\n');    }    system("pause");    return 0;}


0 0