1.将前n^2个正整数填入n*n的方阵中,分为四个转向:
1>从方阵的左上角开始,由外层至中心按照顺时针的方式螺旋排列而成的数字方阵,称为n阶顺转向内方阵
2>从方阵的左上角开始,由外层至中心按照逆时针的方式螺旋排列而成的数字方阵,称为n阶逆转向内方阵
3>从方阵的中心开始,由中心至外层按照顺时针的方式螺旋排列而成的数字方阵,称为n阶顺转向外方阵
4>从方阵的中心开始,由中心至外层按照逆时针的方式螺旋排列而成的数字方阵,称为n阶逆转向外方阵
2.思路:
先画出来4*4方阵的四个转向方阵,查找规律,可以看出,四个方阵的值是有规律的,能求出其中一个,就能根据这个来求出其他三个方阵对应的位置的值,这里求n阶顺转向内方阵
1.假设a[h][v]表示第h行第v列的值,n阶顺转向内方阵是一圈一圈的组成,可以从外想内一圈一圈的求解所有位置的值
1>一圈的上行从左到右依次递增,行号h不变,列号自增1,
2>一圈的右列从上到下依次递增,行号h自增1,列号不变,
3>一圈的下行从右到左依次递增,行号不变,列号自减1,
4>一圈的左列从下到上依次递增,行号h自减1,列号不变
2.从外向内,最外圈是n*n阶,往里的每一圈的阶都自减2
3.顺转向外方阵的值: n*n - a[v][h] + 1
逆转