/*接上篇
对了,我是来找规律的,找幻立方的生成方法的
先看看这个7阶的完美幻立方
初始位置1是在4-1-1(第4行,第1列,第1层,0为基数)
下一步的位置与上一步的相对位移是4-2-2
7的倍数后有个跳步,因为按4-2-2规则,如果不跳的话8的位置就是1的位置,总不能把1给换了吧
7的倍数后的数与前数的相对位移是2-4-0
7*7=49的倍数后又有一个跳步,同样,按照前面的规则,如果不跳的话就没得走了
跳步的相对位移是2-3-3
我们把阶数step,起始位置point0,移步规则deltaPoint,7倍数的跳步规则deltaLine,49倍数的跳步规则deltaSide都写成参数
这样创建幻立方的通用方法就出来了
*/
func createCube(#step: Int, #point0:(row:Int, col:Int, deep:Int),#deltaPoint:(row:Int, col:Int, deep:Int),#deltaLine:(row:Int, col:Int, deep:Int),#deltaSide:(row:Int, col:Int, deep:Int)) -> ([[[Int]]])?{
let cube1 = [Int](count: step, repeatedValue: 0)
let cube2 = [[Int]](count: step, repeatedValue: cube1)
var cube = [[[Int]]](count: step, repeatedValue: cube2)
func deltaP(#pcurr:(row:Int, col:Int, deep:Int),#delta:(row:Int, col:Int, deep:Int),#step:Int)->(row:Int, col:Int, deep:Int){