Python求调,10分,6wa3re
查看原帖
Python求调,10分,6wa3re
724879
Hanser_0019楼主2024/9/26 00:21

应该是填入算法上错了,但是本蒟蒻看不出来

def insert(k,prex,prey):
    if prex == 0 and prey != n-1 and k<n**2:
        matrix[n-1][prey+1] = k
        return insert(k+1,n-1,prey+1)
    if prey == n-1 and prex != 0 and k<n**2:
        matrix[prex-1][0] = k
        return insert(k+1,prex-1,0)
    if prex == 0 and prey == n-1 and k<n**2:
        matrix[prex+1][prey] = k
        return insert(k+1,prex+1,prey)
    if prex != 0 and prey != n-1 and matrix[prex-1][prey+1] == 0 and k<n**2:
        matrix[prex-1][prey+1] = k
        return insert(k+1,prex-1,prey+1)
    else:
        if k<n**2:
            matrix[prex+1][prey] = k
            return insert(k+1,prex+1,prey)
n = int(input())
matrix = [[0]*n for j in range(n)]
matrix[0][n//2] = 1
insert(1,0,n//2)
for i in range(n):
    for j in range(n):
        print(matrix[i][j],end=" ")
    print()


2024/9/26 00:21
加载中...