规则:
1、a + b = c;
2、用完火柴棒;
代码如下:
1 #include2 int fun(int x); 3 4 int main() 5 { 6 int a,b,c,sum=0,m; 7 scanf("%d",&m); //输入火柴的根数 8 for(a=0;a<=1111;a++) 9 {10 for(b=0;b<=1111;b++)11 {12 c=a+b;13 if(fun(a) + fun(b) +fun(c)==m-4)14 {15 printf("%d + %d = %d\n",a,b,c);16 sum++; 17 }18 }19 }20 printf("total %d\n",sum); //总的方法 21 return 0;22 }23 24 int fun(int x)25 {26 int num=0;27 char a[]={ 6,2,5,5,4,5,6,3,7,6};28 while((x/10)!=0)29 {30 num += a[x%10];31 x/=10;32 }33 num +=a[x];34 return num;35 }
该方法视 a+b=c与b+a=c为不同方法。