def judge(center,target):
if (center[0] or center[1])<=0 or (target[0] or target[1])<=0:
return 0
elif abs(center[0]-target[0])>abs(center[1]-target[1]):
return abs(center[0]-target[0])+1
elif abs(center[0]-target[0])<abs(center[1]-target[1]):
return abs(center[1]-target[1])+1
elif abs(center[0]-target[0])==abs(center[1]-target[1]):
return abs(center[1]-target[1])+1
n=int(input())
center=(n,n)
total=0
a,b,c,d=map(int,input().split())
for rn in range(a if a<c else c,c+1 if a<c else a+1):
for rn_ in range(b if b<d else d,d+1 if b<d else b+1):
total+=judge(center,(rn,rn_))
print(total)
請問有甚麼思路或動態規劃能夠參考嗎?
這題數學解,迴圈不會過。
這題數學解,迴圈不會過。
謝謝~小的不才,能請問可能牽涉到甚麼觀念呢?
應該不會是直線方程式巴...
可先練習 f776
可先練習 f776
好新的題目,甘溫