题解 | #回型矩阵#

回型矩阵

http://www.nowcoder.com/practice/36d5dfddc22c4f5b88a5b2a9de7db343

n=int(input())
s=n
if n==1:
    print(n)
else:
    total=n**2+1
    num=1
    m=[]
    while n>=2:
        a=[i for i in range(num,total)]
        x1=[a[i:i+n] for i in range(0,4*n-4,2*n-2)]  #n=3,num=17
        x2=[a[i:i+n-2] for i in range(n,4*n-4,2*n-2)]
        xx=[[] for i in range(n)]
        xx[0]=x1[0]
        xx[-1]=x1[-1][::-1]
        for i in range(1,n-1):
            xx[i]=[x2[1][n-2-i],*[i for i in '*'*(n-2)],x2[0][i-1]] #输出每一圈的回型
        if n%2!=0 and (n-2)==1: 
            xx[int(n/2)][int(n/2)]=total-1   
        m.append(xx)  存储所有圈的回型
        num+=4*(n-1)
        n=n-2
    for j in range(1,len(m)):  #以最外圈为基准进行嵌套
        for i in range(s-2*j):
            m[0][i+j][j:s-j]=m[j][i]
    for i in m[0]:
        print(*i)
全部评论

相关推荐

不愿透露姓名的神秘牛友
07-08 12:05
俺不中了,BOSS遇到了一个hr,我觉得我咨询的问题都很正常吧,然后直接就被拒绝了???
恶龙战士:你问的太多了,要不就整理成一段话直接问他,一个一个问不太好
点赞 评论 收藏
分享
叶扰云倾:进度更新,现在阿里云面完3面了,感觉3面答得还行,基本都答上了,自己熟悉的地方也说的比较细致,但感觉面试官有点心不在焉不知道是不是不想要我了,求阿里收留,我直接秒到岗当阿里孝子,学校那边的房子都退租了,下学期都不回学校,全职猛猛实习半年。这种条件还不诱人吗难道 然后现在约到了字节的一面和淘天的复活赛,外加猿辅导。华为笔试完没动静。 美团那边之前投了个base广州的,把我流程卡麻了,应该是不怎么招人,我直接简历挂了,现在进了一个正常的后端流程,还在筛选,不知道还有没有hc。
点赞 评论 收藏
分享
06-12 10:50
门头沟学院 Java
你的不定积分没加C:我怎么在学院群看到了同样的话
点赞 评论 收藏
分享
这是什么操作什么意思,这公司我服了...
斯派克spark:意思是有比你更便宜的牛马了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务