如何用方程式要求解决这个3x3矩阵

时间:2015-09-06 20:31:49

标签: java algorithm

我今天接受采访时得到了以下的表现: 编写一个程序,为每个元素x 找到所有3x3 矩阵X ,从0到100不等

A   B   C

D   E   F

G   H   I

符合以下要求

A + B - C = 4
+   -   -
D - E * F = 4
/   *   -
G + H + I = 4
=   =   =
4   4   4

用Java编写程序。

1 个答案:

答案 0 :(得分:1)

目前还不是很清楚你的问题是什么,但通过以合理的顺序尝试所有选择,这似乎很简单。

例如,这个Python代码:

for G in range(1,4+1):
    for H in range(4+1-G):
        I = 4 - H - G
        for A in range(0,4+1):
            D = G*(4-A)
            if not 0<=D<=100:
                continue
            for E in range(100+1):
                for F in range(100+1):
                    if D-E*F==4:
                        for B in range(100+1):
                            C=A+B-4
                            if 0<=C<=100:
                                if B-E*H==4:
                                    if C-F-I==4:
                                        print A,B,C
                                        print D,E,F
                                        print G,H,I
                                        print A+B-C,D-E*F,G+H+I,A+D/G,B-E*H,C-F-I

找到以下4个解决方案:

0 10 6
4 6 0
1 1 2
4 4 4 4 4 4
2 7 5
4 3 0
2 1 1
4 4 4 4 4 4
1 8 5
6 2 1
2 2 0
4 4 4 4 4 4
2 6 4
4 1 0
2 2 0
4 4 4 4 4 4