LeetCode 1033 移動石子直到連續

2021-10-05 13:14:12 字數 913 閱讀 2400

三枚石子放置在數軸上,位置分別為 a,b,c。

每一回合,我們假設這三枚石子當前分別位於位置 x, y, z 且 x < y < z。

從位置 x 或者是位置 z 拿起一枚石子,並將該石子移動到某一整數字置 k 處,其中 x < k < z 且 k != y。

當你無法進行任何移動時,即,這些石子的位置連續時,遊戲結束。

要使遊戲結束,你可以執行的最小最大移動次數分別是多少?

以長度為 2 的陣列形式返回答案:answer = [minimum_moves, maximum_moves]

示例 1:

輸入:a =

1, b =

2, c =

5輸出:[1,

2]解釋:將石子從 5 移動到 4 再移動到 3,或者我們可以直接將石子移動到 3。

示例 2:

輸入:a =

4, b =

3, c =

2輸出:[0,

0]解釋:我們無法進行任何移動。 1

<= a <=

1001

<= b <=

1001

<= c <=

100a != b, b != c, c != a

class

solution;if

((b-a ==

1&& c-b !=1)

||(b-a !=

1&& c-b ==1)

|| b-a==

2|| c-b==2)

// 有兩個挨著的,或者,兩個中間有乙個空位, 最少一步

return

;return;}

};

4 ms 8.2 mb

leetcode 1033 移動石子直到連續

主要是需要搞清楚移動的方式,接下來就很簡單了。題目 三枚石子放置在數軸上,位置分別為 a,b,c。每一回合,我們假設這三枚石子當前分別位於位置 x,y,z 且 x y z。從位置 x 或者是位置 z 拿起一枚石子,並將該石子移動到某一整數字置 k 處,其中 x k z 且 k y。當你無法進行任何移...

1033 移動石子直到連續

三枚石子放置在數軸上,位置分別為a,b,c。每一回合,我們假設這三枚石子當前分別位於位置x,y,z且x y z。從位置x或者是位置z拿起一枚石子,並將該石子移動到某一整數字置k處,其中x k z且k y。當你無法進行任何移動時,即,這些石子的位置連續時,遊戲結束。要使遊戲結束,你可以執行的最小和最大...

1033 移動石子直到連續

三枚石子放置在數軸上,位置分別為 a,b,c。每一回合,我們假設這三枚石子當前分別位於位置 x,y,z 且 x y z。從位置 x 或者是位置 z 拿起一枚石子,並將該石子移動到某一整數字置 k 處,其中 x k z 且 k y。當你無法進行任何移動時,即,這些石子的位置連續時,遊戲結束。要使遊戲結...