總網頁瀏覽量

2018年6月21日 星期四

2017.3月大學程式設計先修檢測 實作題 第三題(數字龍捲風)


Python Code:
n=int(input()) #奇方陣的階數
k=int(input()) #起始方向 0左 1上 2右 3下
a=[] #輸入的奇方陣
out=[] #列印的奇方陣
for i in range(n): #輸入N*N的二維方陣
    data=input().split() #分離字串
    d=[x for x in data] 
    a.append(d)
direction=[[0,-1],[-1,0],[0,1],[1,0]]
s=1
walk=0
s2=0
x=y=n/2
while (x>=0 and y>=0 and x<n and y<n):
    x=int(x)
    y=int(y)
    out.append(a[x][y])
    if (walk==s):
        k=(k+1)%4
        walk=0
        s2+=1
        if(s2==2):
            s+=1
            s2=0
    x+=direction[k][0]
    y+=direction[k][1]
    walk+=1
for i in range(len(out)):
    print(out[i],end='')

👷 很有難度的一題,參考人家的C語寫法,才能把它coding 
     出來~~~

1 則留言: