蓝桥杯-回形取数
題目描述
回形取數(shù)就是沿矩陣的邊取數(shù),若當(dāng)前方向上無(wú)數(shù)可取或已經(jīng)取過(guò),則左轉(zhuǎn)90度。一開(kāi)始位于矩陣左上角,方向向下。
輸入描述
輸入第一行是兩個(gè)不超過(guò) 200200 的正整數(shù) m,n,表示矩陣的行和列。接下來(lái) mm 行每行 nn 個(gè)整數(shù),表示這個(gè)矩陣。
輸出描述
輸出只有一行,共 mn 個(gè)數(shù),為輸入矩陣回形取數(shù)得到的結(jié)果。數(shù)之間用一個(gè)空格分隔,行末不要有多余的空格。
輸入輸出樣例
3 3 1 2 3 4 5 6 7 8 9 1 4 7 8 9 6 3 2 5運(yùn)行限制
- 最大運(yùn)行時(shí)間:1s
- 最大運(yùn)行內(nèi)存: 128M
- dir = [(1,0),(0,1),(-1,0),(0,-1)]
m, n=map(int,input().split())
s=[]
#m,n=int(m),int(n)
for i in range(m):s.append(input().split())
sum=0
x,y=-1,0
d=0
while sum < m*n:sum=sum+1dx,dy=x+dir[d][0],y+dir[d][1]if dx<0 or dx>=m or dy<0 or dy>=n or s[dx][dy]==-1:d=(d+1)%4x,y=x+dir[d][0],y+dir[d][1]else:x=dxy=dyprint(s[x][y],end=' ')s[x][y]=-1
思路來(lái)源--藍(lán)橋杯算法課
總結(jié)
- 上一篇: 外星人鼠标如何设置宏定义
- 下一篇: 蛋蛋读NVMe之二