題目背景
豬豬hanke得到了一隻雞
題目描述
豬豬Hanke特別喜歡吃烤雞(本是同畜牲,相煎何太急!)Hanke吃雞很特別,爲什麼特別呢?因爲他有10種配料(芥末、孜然等),每種配料可以放1—3克,任意烤雞的美味程度爲所有配料質量之和
現在,Hanke想要知道,如果給你一個美味程度,請輸出這10種配料的所有搭配方案
輸入輸出格式
輸入格式:一行,n<=5000
輸出格式:第一行,方案總數
第二行至結束,10個數,表示每種配料所放的質量
按字典序排列。
如果沒有符合要求的方法,就只要在第一行輸出一個“0”
輸入輸出樣例
輸入樣例#1:
11
輸出樣例#1:
10 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1
說明
洛谷原創題【P2089】
純暴力
附AC碼:
#include<stdio.h>
#include<string.h>
int main(){
int a,b,c,d,e,f,g,h,i,j,n,sum=0;
scanf("%d",&n);
for(a=1;a<=3;a++)
for(b=1;b<=3;b++)
for(c=1;c<=3;c++)
for(d=1;d<=3;d++)
for(e=1;e<=3;e++)
for(f=1;f<=3;f++)
for(g=1;g<=3;g++)
for(h=1;h<=3;h++)
for(i=1;i<=3;i++)
for(j=1;j<=3;j++)
if((a+b+c+d+e+f+g+h+i+j)==n)
sum++;
printf("%d\n",sum);
for(a=1;a<=3;a++)
for(b=1;b<=3;b++)
for(c=1;c<=3;c++)
for(d=1;d<=3;d++)
for(e=1;e<=3;e++)
for(f=1;f<=3;f++)
for(g=1;g<=3;g++)
for(h=1;h<=3;h++)
for(i=1;i<=3;i++)
for(j=1;j<=3;j++)
if((a+b+c+d+e+f+g+h+i+j)==n)
printf("%d %d %d %d %d %d %d %d %d %d\n",a,b,c,d,e,f,g,h,i,j);
return 0;
}