个算式中A~I代表0~9的数字,不同的字母代表不同的数字。
比如:
6+8/3+952/714 就是一种解法,
#include<stdio.h>
int main()
{
int a, b, c, d, e, f, g, h, i, xx = 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++) //当int不行的时候 可以考虑用别的数字!!!
for(h=1;h<10;h++)
for (i = 1;i < 10;i++)//当这个数字乘1.0后或者就可以表示浮点型!!!
{
if ((a + b*1.0 / c + (100 * d + 10 * e + f)*1.0 / (100 * g + 10 * h + i) == 10) &&
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&&d != i
&&e != f&&e != g&&e != h&&e != i
&&f != g&&f != h&&f != i
&&g != h&&g != i
&&h != i //暴力突破算了好久!!!
&& ((b*(100 * g + 10 * h + i) + c*(100 * d + 10 * e + f)) % (c*(100 * g + 10 * h + i))==0
))
{
printf("%d+%d/%d+%d%d%d/%d%d%d\n", a, b, c, d, e, f, g, h, i);
xx++;
}
}
printf("%d", xx);
return 0;
}
5+3/1+972/486 是另一种解法。
这个算式一共有多少种解法?
注意:你提交应该是个整数,不要填写任何多余的内容或说明性文字。