練習 逃脫阻礙者

2021-09-23 10:47:52 字數 849 閱讀 8956

題目:

你在進行乙個簡化版的吃豆人遊戲。你從 (0, 0) 點開始出發,你的目的地是 (target[0], target[1]) 。地圖上有一些阻礙者,第 i 個阻礙者從 (ghosts[i][0], ghosts[i][1]) 出發。

每一回合,你和阻礙者們可以同時向東,西,南,北四個方向移動,每次可以移動到距離原位置1個單位的新位置。

如果你可以在任何阻礙者抓住你之前到達目的地(阻礙者可以採取任意行動方式),則被視為逃脫成功。如果你和阻礙者同時到達了乙個位置(包括目的地)都不算是逃脫成功。

當且僅當你有可能成功逃脫時,輸出 true。

示例 1:

輸入:ghosts = [[1, 0], [0, 3]]

target = [0, 1]

輸出:true

解釋:你可以直接一步到達目的地(0,1),在(1, 0)或者(0, 3)位置的阻礙者都不可能抓住你。

示例 2:

輸入:ghosts = [[1, 0]]

target = [2, 0]

輸出:false

解釋:你需要走到位於(2, 0)的目的地,但是在(1, 0)的阻礙者位於你和目的地之間。

示例 3:

輸入:ghosts = [[2, 0]]

target = [1, 0]

輸出:false

解釋:阻礙者可以和你同時達到目的地。

思路:就判斷我距離目標點的距離是否小於(吃豆人)阻礙者到目標點的距離就行

public boolean escapeghosts(int ghosts, int target) 

}return true;

}

Leetcode 789 逃脫阻礙者

你在進行乙個簡化版的吃豆人遊戲。你從 0,0 點開始出發,你的目的地是 target 0 target 1 地圖上有一些阻礙者,第 i 個阻礙者從 ghosts i 0 ghosts i 1 出發。每一回合,你和阻礙者們 可以 同時向東,西,南,北四個方向移動,每次可以移動到距離原位置1個單位的新位...

生產者消費者模型概要和基本練習

完成某些操作的時候可能需要一些資料,這樣的資料可能由專門的 執行緒 程序產生,再由專門的執行緒 程序使用。需要有乙個交易場所。儲存資料的地方,可能是乙個佇列 棧或者其他資料結構 生產者 負責產生資料,然後把資料放到交易場所中。消費者 負責消費資料,從交易場所中獲取走。乙個交易場所 阻塞佇列 兩個角色...

執行緒練習題生產者與消費者

測試類 public class test 資源類 包子類 設定包子的屬性皮陷 包子狀態 有true 沒有false class baozi 包子鋪 生產者 包子鋪 是乙個執行緒類,繼承thread類 設定執行緒的任務 生產包子 true 有包子 包子呼叫wait方法進入等待狀態 false 沒有包...