LeetCode5073 進擊的騎士

2021-09-27 08:08:06 字數 981 閱讀 4439

乙個座標可以從-infinity延伸到+infinity的 無限大的 棋盤上,你的 騎士 駐紮在座標為[0, 0]的方格裡。

騎士的走法和中國象棋中的馬相似,走 「日」 字:即先向左(或右)走 1 格,再向上(或下)走 2 格;或先向左(或右)走 2 格,再向上(或下)走 1 格。

每次移動,他都可以按圖示八個方向之一前進。

現在,騎士需要前去征服座標為[x, y]的部落,請你為他規劃路線。

最後返回所需的最小移動次數即可。本題確保答案是一定存在的。

示例 1:

輸入:x = 2, y = 1

輸出:1

解釋:[0, 0] → [2, 1]

|x| + |y| <= 300
原題鏈結;

寬度優先搜尋,並且把visited的點儲存下來。

class solution ;

int dy = ;

setvisited = new hashset<>();

int m = 10000;

queuequeue = new linkedlist<>();

queue.add(new int );

visited.add(0 * m + 0);

int res = 0;

if (x == 0 && y == 0) return 0;

while (!queue.isempty()) );

visited.add(nx * m + ny);}}

}return -1;}}

LeetCode 1197 進擊的騎士(BFS)

乙個座標可以從 infinity 延伸到 infinity 的無限大的 棋盤上,你的 騎士 駐紮在座標為 0,0 的方格裡。騎士的走法和中國象棋中的馬相似,走 日 字 即先向左 或右 走 1 格,再向上 或下 走 2 格 或先向左 或右 走 2 格,再向上 或下 走 1 格。每次移動,他都可以按圖示...

進擊的奶牛

題面 from luogu 進擊的奶牛 farmer john建造了乙個有n 2 n 100,000 個隔間的牛棚,這些隔間分布在一條直線上,座標是x1,xn 0 xi 1,000,000,000 他的c 2 c n 頭牛不滿於隔間的位置分布,它們為牛棚裡其他的牛的存在而憤怒。為了防止牛之間的互相打...

進擊的物件池

前面有一篇文章說過在 中如果要高頻地建立乙個物件 比如一些及時通訊的socket等等 怎麼通過raii技法進行記憶體優化,而且這些物件在程式中的生存週期比較短,搞幾下就沒用了,尤其是一些執行緒之類,如果要完成什麼阻塞任務,雖然它就搞那麼幾秒,但放在主線程就是會卡住介面,讓使用者體驗很差,然而執行緒的...