凑算式
B DEF
A + --- + ------- = 10
C GHI
(如果显示有问题,可以参见【图1.jpg】)
这个算式中A~I代表1~9的数字,不同的字母代表不同的数字。
比如:
6+8/3+952/714 就是一种解法,
5+3/1+972/486 是另一种解法。
这个算式一共有多少种解法?
注意:你提交应该是个整数,不要填写任何多余的内容或说明性文字。
/*
分析
题目相当熟悉了。
可直接循环暴力求解 。
(g*100+h*10+i)*c*10==a*c*(g*100+h*10+i)+b*(g*100+h*10+i)+c*(d*100+e*10+f)
*/
#include<stdio.h>
int main()
{
int a,b,c,d,e,f,g,h,i;
int counter=0;
for(a=1;a<10;a++)
for(b=1;b<10;b++)
for(c=1;c<10;c++)
for(d=1;d<10;d++)
for(e=1;e<10;e++)
for(f=1;f<10;f++)
for(g=1;g<10;g++)
for(h=1;h<10;h++)
for(i=1;i<10;i++)
{
if(a!=b&&a!=c&&a!=d&&a!=e&&a!=f&&a!=g&&a!=h&&a!=i&&
b!=c&&b!=d&&b!=e&&b!=f&&b!=g&&b!=h&&b!=i&&
c!=d&&c!=e&&c!=f&&c!=g&&c!=h&&c!=i&&
d!=e&&d!=f&&d!=g&&d!=h&&g!=i&&
e!=f&&e!=g&&e!=h&&e!=i&&
f!=g&&f!=h&&f!=i&&g!=h&&g!=i&&h!=i){
if((g*100+h*10+i)*c*10==a*c*(g*100+h*10+i)+b*(g*100+h*10+i)+c*(d*100+e*10+f))
counter++;
}
}
printf("%d",counter);
return 0;
}