/*
暴力求解的过程,让我整个人都不好了
不过在网上还找到了几个号称是3阶素数幻立方的,诶。。。。这个可以看下
http://tieba.baidu.com/p/3165245336
*/
func testPrimeNumberCube3(){
let cube1: [[[Int]]] =
[[[2273,6449,2777],[6563,797,4139],[2663,4253,4583]],
[[6143,1637,3719],[1409,3833,6257],[3947,6029,1523]],
[[3083,3413,5003],[3527,6869,1103],[4889,1217,5393]]]
let cube2: [[[Int]]] =
[[[3607,4903,3049],[5413,4519,1627],[2539,2137,6883]],
[[7129,1087,3343],[67,3853,7639],[4363,6619,577]],
[[823,5569,5167],[6079,3187,2293],[4657,2803,4099]]]
let cube3: [[[Int]]] =
[[[83,2309,2267],[2423,107,2129],[2153,2243,263]],
[[1733,1487,1439],[977,2999,683],[1667,1619,1373]],
[[2843,863,953],[6079,3187,2293],[839,797,3023]]]
let cube4: [[[Int]]] =
[[[773,863,3023],[977,2999,683],[2909,797,953]],
[[1733,1487,1439],[1259,1553,1847],[1667,1619,1373]],
[[2153,2309,197],[2423,107,2129],[83,2243,2333]]]
let cube5: [[[Int]]] =
[[[2843,863,953],[977,2999,683],[839,797,3023]],
[[1733,1487,1439],[1259,1553,1847],[1667,1619,1373]],
[[83,2309,2267],[2423,107,2129],[2153,2243,263]]]
let cube6: [[[Int]]] =
[[[2087,2309,263],[2423,107,2129],[149,2243,2267]],
[[1733,1487,1439],[1259,1553,1847],[1667,1619,1373]],
[[839,863,2957],[977,2999,683],[2843,797,1019]]]
func testcube(cube:[[[Int]]],aInt:Int){
println("检查cube\(aInt)")
let line =isMagicCube(cube,true)
iflet line_ = line {
println("不是幻立方,line:\(line_)")
}else{
println("是完美幻立方")
}
}
testcube(cube1,1)
testcube(cube2,2)
testcube(cube3,3)
testcube(cube4,4)
testcube(cube5,5)
testcube(cube6,6)
}
//testPrimeNumberCube3()
/*
太让我失望了,他们并不是完美幻立方
至于这些数是不是都是素数,我就不检查了
或许根本就没有全由素数组成的幻立方呢
不同的立方里面有很多是一样的
总之不够完美,没兴趣再深入了解他们了
下面是打印结果
*/
/*
检查cube1
经检查,行的和都是相等的
经检查,列的和都是相等的
经检查,深的和都是相等的
不是幻立方,line:((0, 0, 0), (2, 2, 0))
检查cube2
经检查,行的和都是相等的
经检查,列的和都是相等的
经检查,深的和都是相等的
不是幻立方,line:((0, 0, 0), (2, 2, 0))
检查cube3
不是幻立方,line:((1, 0, 0), (1, 2, 0))
检查cube4
经检查,行的和都是相等的
经检查,列的和都是相等的
经检查,深的和都是相等的
不是幻立方,line:((0, 0, 0), (2, 2, 0))
检查cube5
经检查,行的和都是相等的
经检查,列的和都是相等的
经检查,深的和都是相等的
不是幻立方,line:((0, 0, 0), (2, 2, 0))
检查cube6
经检查,行的和都是相等的
经检查,列的和都是相等的
经检查,深的和都是相等的
不是幻立方,line:((0, 0, 0), (2, 2, 0))
*/