| Run ID | 作者 | 问题 | 语言 | 测评结果 | Time | Memory | 代码长度 | 提交时间 |
|---|---|---|---|---|---|---|---|---|
| 77708 | 贺志涵 | 方阵填数 | Python3 | Wrong Answer | 33 MS | 3816 KB | 711 | 2024-06-15 11:25:24 |
n=int(input("N是多少?")) m=[[0 for _ in range(n) ] for _ in range(n)] #被0填满的二维列表 #c = [0 for _ in range(5)] #列表名=[预设元素 for _ in range(列表长度)] if n==1: print(" "+str(1)) else: x,y = 0,n-1 m[x][y]=1 dx = [1,0,-1,0] dy = [0,-1,0,1] d = 0 for i in range(2,n*n+1): next_x=x + dx[d] next_y=y + dy[d] if not(0<=next_x<n)or not(0<=next_y<n) or m[next_x][next_y]!=0: d = (d+1)%4 next_x=x + dx[d] next_y=y + dy[d] x,y=next_x,next_y#每次变化都记录 m[x][y]=i for i in range(n): for j in range(n): print(m[i][j],end=' ') print()
------Input------
10
------Answer-----
28 29 30 31 32 33 34 35 36 1 27 58 59 60 61 62 63 64 37 2 26 57 80 81 82 83 84 65 38 3 25 56 79 94 95 96 85 66 39 4 24 55 78 93 100 97 86 67 40 5 23 54 77 92 99 98 87 68 41 6 22 53 76 91 90 89 88 69 42 7 21 52 75 74 73 72 71 70 43 8 20 51 50 49 48 47 46 45 44 9 19 18 17 16 15 14 13 12 11 10
------Your output-----