看板 Prob_Solve 關於我們 聯絡資訊
每走 1 斜邊使得 x 距離與 y 距離各縮減 1 個單位,直到 x 與 y 其中之一距離達 0 ,這時只要往 x 或往 y 方向,直行其剩餘距離 ( max( |x| - |y|, |y| - |x| ) ),即 可到達目的地。 ※ 引述《keke0421 (zrae)》之銘言: : 大家好 : 最近寫程式寫到一個題目,題目如下。 : 假設有8*8的一個矩陣棋盤,上面有四個棋子,分別為王、后、車、象。 : 其行走規則如下: : 王 : 橫、直、斜都可以走,但一次只能走一格 : 后 : 橫、直、斜都可以走,但不限格數 : 問,今天給你座標上任一點的起始位置與終點位置,請問王、后的最短距離是? : 我的問題是: : 橫、直一下子就想出來了。至於斜邊試過幾個方法失敗後(畢氏定理..etc) : 用歸納法可以解決,方法就是假設起始位置(x1,y1),終點位置(x2,y2) : 設x= abs(x1-x2) , y = abs(y1-y2) : 只要x<y則最短距離就是y,否則就是x : 我想用數學方法來解決,但是還是想不通,為何一個棋盤上的最短距離 : 只需要靠x,y就可以決定呢? : 感謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.167.56.102
fatalismo:|d| = min( |x|, |y| ) + max( |x| - |y|, |y| - |x| ) 07/17 11:22
fatalismo:= max( |x|, |y| ) 07/17 11:22
keke0421:感謝~我懂了 07/18 07:10