方法:暴力枚举 (注意 B/C DEF/GHI 不是int/int只取整数部分)
#include <bits/stdc++.h>
using namespace std;
int main()
{
int a,b,c,d,e,f,g,h,i,ans=0,x,jud=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++)
{
int test[9]={a,b,c,d,e,f,g,h,i}; //检验abcdefghi是否重复
sort(test,test+9);
for(x=0;x<9;x++)
if(test[x]==x+1) jud++;
if(jud==9)
if(a+(float)b/c+(float)(d*100+e*10+f)/(g*100+h*10+i)==10)
ans++;
jud=0;
}
printf("%d",ans);
return 0;
}
答案为 29
以下为可能的取值
A BCDE F G H I
3 5 1 9 7 2 4 8 6
4 9 3 5 2 8 1 7 6
5 3 1 9 7 2 4 8 6
5 4 3 7 2 6 1 9 8
5 4 9 7 3 8 1 6 2
5 8 6 4 7 3 1 2 9
6 4 2 3 5 8 1 7 9
6 4 2 7 1 8 3 5 9
6 7 3 4 8 5 2 9 1
6 8 3 9 5 2 7 1 4
6 9 8 4 3 7 1 5 2
7 1 4 9 6 8 3 5 2
7 3 2 8 1 9 5 4 6
7 3 2 9 8 1 6 5 4
7 5 3 2 6 4 1 9 8
7 5 3 9 1 2 6 8 4
7 9 6 3 8 1 2 5 4
7 9 6 8 1 3 5 4 2
8 1 3 4 6 5 2 7 9
8 6 9 7 1 2 5 3 4
8 7 6 1 9 5 2 3 4
9 1 3 4 5 2 6 7 8
9 1 3 5 2 4 7 8 6
9 2 4 1 7 8 3 5 6
9 2 4 3 5 8 7 1 6
9 3 4 1 5 7 6 2 8
9 4 8 1 7 6 3 5 2
9 4 8 3 5 6 7 1 2
9 6 8 1 4 3 5 7 2