題目來源:APCS2017-0304
檢測平台:https://zerojudge.tw/ShowProblem?problemid=c292
首先先定義四個方向的X、Y偏移量:
EX.
a = [[0 , -1] , [-1 , 0] , [0 , 1] , [1 , 0]]
這題乍看可能不好著手,這時需要做的就是好好檢視測試數據,
仔細觀察測資,你會發現基本上每個方向移動的步數為1,1,2,2,3,3......
好囉,程式碼如下:
如果有問題歡迎留言或私訊討論囉。
a = [[0 , -1] , [-1 , 0] , [0 , 1] , [1 , 0]]
n = int(input())
d = int(input())
t = []
for i in range(n):
t.append([int(i) for i in input().split()])
x = y = int(len(t) / 2)
s = str(t[x][y])
end = 0
for i in range(1,len(t)+1):
if end == 1: break
for k in range(0 , 2):
if end == 1:break
for j in range(i):
x += a[d][0]
y += a[d][1]
if x < 0 or y < 0 or x == len(t) or y == len(t):
end = 1
break;
s += str(t[x][y])
d += 1
d %= 4
print(s)
沒有留言:
張貼留言