Leetcode 675.爲高爾夫比賽砍樹

爲高爾夫比賽砍樹

你被請來給一個要舉辦高爾夫比賽的樹林砍樹. 樹林由一個非負的二維數組表示, 在這個數組中: 數組

  1. 0 表示障礙,沒法觸碰到.
  2. 1 表示能夠行走的地面.
  3. 比1大的數 表示一顆容許走過的樹的高度.

你被要求按照樹的高度從低向高砍掉全部的樹,每砍過一顆樹,樹的高度變爲1。 spa

你將從(0,0)點開始工做,你應該返回你砍完全部樹須要走的最小步數。 若是你沒法砍完全部的樹,返回 -1 。 二維數組

能夠保證的是,沒有兩棵樹的高度是相同的,而且至少有一顆樹須要你砍。 比賽

示例 1: 工作

輸入:

[

[1,2,3],

[0,0,4],

[7,6,5]

]

輸出: 6

   

示例 2:

輸入:

[

[1,2,3],

[0,0,0],

[7,6,5]

]

輸出: -1

   

示例 3:

輸入:

[

[2,3,4],

[0,0,5],

[8,7,6]

]

輸出: 6

 

解釋: (0,0) 位置的樹,你能夠直接砍去,不用算步數

   

提示: 矩陣大小不會超過 50x50 。

相關文章
相關標籤/搜索