Answer

问题及解答

有五个圆圈, 排成一排,相邻两个有交集. 在其中填 1-9 九个数字, 使得每个圆圈中的数字之和相等.

Posted by haifeng on 2016-01-27 18:36:46 last update 2016-01-27 18:38:45 | Edit | Answers (0)

设依次为 [a, (b] c, [d), e, (f], g, [h), i]

首先 a, i>=3. 若 a=c+d 为 3=1+2,  则 i必须是9. 且9=4+5.
但是这推不出解。因此,首尾的数 a 和 i 都大于 3. 

确定 a 和 i 的取值范围后,就变成了三元未定方程组了。整个可以用编程实现。

 

根据问题我们得到
    a=c+d
b+c=e+f
d+e=g+h
f+g=i

 

注意如果确定了 a 和 i. 那么, 中间两个方程可以认为是同等地位的.

比如选择 a=3, 于是确定 i=9. (可以使用子程序确定)

于是方程组变为
   3=2+1
b+c=e+f
d+e=g+h
4+5=9

因此不妨设 f=4, g=5.  于是对于 (c,d)=(1,2) or (2,1) 代入, 将将剩余的数字代入检验是否是解。


比如下面是其中一个解.

9(4)1(8)3(2)5(6)7