time: 20191014
在乙個 8x8 的棋盤上,放置著若干「黑皇后」和乙個「白國王」。
「黑皇后」在棋盤上的位置分布用整數座標陣列 queens 表示,「白國王」的座標用陣列 king 表示。
「黑皇后」的行棋規定是:橫、直、斜都可以走,步數不受限制,但是,不能越子行棋。
請你返回可以直接攻擊到「白國王」的所有「黑皇后」的座標(任意順序)。
示例 1:
輸入:queens = [[0,1],[1,0],[4,0],[0,4],[3,3],[2,4]], king = [0,0]
輸出:[[0,1],[1,0],[3,3]]
解釋:[0,1] 的皇后可以攻擊到國王,因為他們在同一行上。
[1,0] 的皇后可以攻擊到國王,因為他們在同一列上。
[3,3] 的皇后可以攻擊到國王,因為他們在同一條對角線上。
[0,4] 的皇后無法攻擊到國王,因為她被位於 [0,1] 的皇后擋住了。
[4,0] 的皇后無法攻擊到國王,因為她被位於 [1,0] 的皇后擋住了。
[2,4] 的皇后無法攻擊到國王,因為她和國王不在同一行/列/對角線上。
示例 2:
輸入:queens = [[0,0],[1,1],[2,2],[3,4],[3,5],[4,4],[4,5]], king = [3,3]
輸出:[[2,2],[3,4],[4,4]]
示例 3:
輸入:queens = [[5,6],[7,7],[2,1],[0,7],[1,6],[5,1],[3,7],[0,3],[4,0],[1,2],[6,3],[5,0],[0,4],[2,2],[1,1],[6,4],[5,4],[0,0],[2,6],[4,5],[5,2],[1,4],[7,5],[2,3],[0,5],[4,2],[1,0],[2,7],[0,1],[4,6],[6,1],[0,6],[4,3],[1,7]], king = [3,4]
輸出:[[2,3],[1,4],[1,6],[3,7],[4,3],[5,4],[4,5]]
提示:
從king所在的位置向外8個方向探索,如果遇到了皇后,加入到結果中來,並停止此方向的探索即可。
class
solution
:def
queensattacktheking
(self, queens: list[list[
int]
], king: list[
int])-
> list[list[
int]]:
# 棋盤大小限定為8 x 8
# 從king所在位置沿著8個方向探索,首先碰到的queen,就加入到陣列,並停止此方向探索
res =
for i in[-
1,0,
1]:for j in[-
1,0,
1]:for k in
range(1
,8):
x = king[0]
+ i * k
y = king[1]
+ j * k
if[x, y]
in queens:
[x, y]
)break
return res
update:end. 他山之石,可以攻玉。
第乙份工作 雜亂的工作,迷茫的未來 我的第乙份工作是在一家外企sp上班。算是正式走上社會的第乙份工作,待遇在2200 3000左右 加班費和補助是浮動的 經常性加班,福利還算不錯,有加班費,補助。但工作內容很雜 公司內部區域網 ad,dhcp,mail,cisco,vpn,ap,集團 中病毒當然也是...
他山之石,可以攻玉 篇
顧森的數學部落格 沒事兒多看看人家文科生都可以把數學學那麼好。謝益輝的個人部落格 瞻仰一下統計學博士,看看所謂 意識流甚多 的人是怎麼思考問題的。有很多數學的庫 暫時還沒太明白怎麼使用 關於統計的書 2020.1.18 第一課,搜尋資訊 everything,搜尋檔案,會比較快,而且支援布林邏輯檢索...
20190703 他山之石可以攻玉 導航守衛
修改vue的埠號 在config下面的index.js中調製port的數值,以此來更改埠號。在同乙個webstorm中編譯兩個專案 階段小結 目前routes.js路由的跳轉已經完畢。導航守衛 導航就是我們說的路由,當路由發生變化的時候,我們想要做的事情,這就是導航守衛的重點。const route...