国际数学会上的题目,谁会?

来源:百度知道 编辑:UC知道 时间:2024/06/14 20:47:21
1993年10月,在山东举行的中、日、美三国数学教育会上,日本的桥本吉颜教授向与会者提出如下一道趣题:
请在下图的□内分别写1、2、……、9各一个数字,使得等式成立
□/(□□)+□/(□□)=□/(□□)
[三个分数的分母是两位数]
并且教授给出一个解答,猜测可能是唯一解.但是用计算机检验,立即找出十个解答.

答案
1 2 6 5 7 8 4 3 9
1 3 2 5 9 6 7 8 4
1 3 2 7 9 6 5 4 8
1 7 8 4 3 9 6 5 2
1 9 6 7 4 8 5 3 2
2 6 8 9 3 4 5 1 7
2 6 8 9 5 1 7 3 4
4 3 9 1 7 8 6 5 2
4 5 6 7 9 8 3 2 1
5 2 6 9 7 8 4 1 3
5 7 8 1 2 6 4 3 9
5 9 6 1 3 2 7 8 4
6 3 4 8 5 1 9 2 7
7 4 8 1 9 6 5 3 2
7 9 6 1 3 2 5 4 8
7 9 8 4 5 6 3 2 1
8 5 1 6 3 4 9 2 7
9 3 4 2 6 8 5 1 7
9 5 1 2 6 8 7 3 4
9 7 8 5 2 6 4 1 3

非常暴力的程序
#include <iostream>
using namespace std;

void fun(int *a)
{
int b[6]={
a[0]+1,
10*(a[1]+1)+a[2]+1,
a[3]+1,
10*(a[4]+1)+a[5]+1,
a[6]+1,
10*(a[7]+1)+a[8]+1
};
if( (b[0]*b[3]+b[1]*b[2])*b[5] == b[1]*b[3]*b[4] ){

for(int i=0;i<9;i++)
cout<<a[i]+1<<" ";
cout<<endl;

}
}

int main()
{
int a[9]={0};
int b[9]={0};
f