Leetcode C 《第202場周賽》

2021-10-09 05:50:34 字數 2485 閱讀 9176

1.1問題

給你乙個整數陣列 arr,請你判斷陣列中是否存在連續三個元素都是奇數的情況:如果存在,請返回 true ;否則,返回 false 。

示例 1:

輸入:arr = [2,6,4,1]

輸出:false

解釋:不存在連續三個元素都是奇數的情況。

示例 2:

輸入:arr = [1,2,34,3,4,5,7,23,12]

輸出:true

解釋:存在連續三個元素都是奇數的情況,即 [5,7,23] 。

1 <= arr.length <= 1000

1 <= arr[i] <= 1000

1.2思路

1.3**

class

solution

else}if

(count ==3)

return

true

;else

return

false;}

};

2.1問題

存在乙個長度為 n 的陣列 arr ,其中 arr[i] = (2 * i) + 1 ( 0 <= i < n )。

一次操作中,你可以選出兩個下標,記作 x 和 y ( 0 <= x, y < n )並使 arr[x] 減去 1 、arr[y] 加上 1 (即 arr[x] -=1 且 arr[y] += 1 )。最終的目標是使陣列中的所有元素都 相等 。題目測試用例將會 保證 :在執行若干步操作後,陣列中的所有元素最終可以全部相等。

給你乙個整數 n,即陣列的長度。請你返回使陣列 arr 中所有元素相等所需的 最小運算元 。

示例 1:

輸入:n = 3

輸出:2

解釋:arr = [1, 3, 5]

第一次操作選出 x = 2 和 y = 0,使陣列變為 [2, 3, 4]

第二次操作繼續選出 x = 2 和 y = 0,陣列將會變成 [3, 3, 3]

2.2思路

2.3**

class

solution

};

3.1問題

在代號為 c-137 的地球上,rick 發現如果他將兩個球放在他新發明的籃子裡,它們之間會形成特殊形式的磁力。rick 有 n 個空的籃子,第 i 個籃子的位置在 position[i] ,morty 想把 m 個球放到這些籃子裡,使得任意兩球間 最小磁力 最大。

已知兩個球如果分別位於 x 和 y ,那麼它們之間的磁力為 |x - y| 。

給你乙個整數陣列 position 和乙個整數 m ,請你返回最大化的最小磁力。

示例 1:

輸入:position = [1,2,3,4,7], m = 3

輸出:3

解釋:將 3 個球分別放入位於 1,4 和 7 的三個籃子,兩球間的磁力分別為 [3, 3, 6]。最小磁力為 3 。我們沒辦法讓最小磁力大於 3 。

3.2思路

3.3**

class

solution}if

(count >= m)

else

}return l;}}

;

4.1問題

廚房裡總共有 n 個橘子,你決定每一天選擇如下方式之一吃這些橘子:

吃掉乙個橘子。

如果剩餘橘子數 n 能被 2 整除,那麼你可以吃掉 n/2 個橘子。

如果剩餘橘子數 n 能被 3 整除,那麼你可以吃掉 2*(n/3) 個橘子。

每天你只能從以上 3 種方案中選擇一種方案。

請你返回吃掉所有 n 個橘子的最少天數。

示例 1:

輸入:n = 10

輸出:4

解釋:你總共有 10 個橘子。

第 1 天:吃 1 個橘子,剩餘橘子數 10 - 1 = 9。

第 2 天:吃 6 個橘子,剩餘橘子數 9 - 2*(9/3) = 9 - 6 = 3。(9 可以被 3 整除)

第 3 天:吃 2 個橘子,剩餘橘子數 3 - 2*(3/3) = 3 - 2 = 1。

第 4 天:吃掉最後 1 個橘子,剩餘橘子數 1 - 1 = 0。

你需要至少 4 天吃掉 10 個橘子。

4.2思路

4.3**

class

solution

if (i % 3 == 0 && i >= 3)

}return dp[n];}*/

//case 2

unordered_map<

int,

int> dp;

intmindays

(int n)

if(n ==1)

dp[n]

=min

(min(1

+n%2

+mindays

(n/2),

1+n%3+

mindays

(n/3))

, n)

;return dp[n];}

};

Leetcode C 《第203場周賽》

1.1問題 給你乙個整數 n 和乙個整數陣列 rounds 有一條圓形賽道由 n 個扇區組成,扇區編號從 1 到 n 現將在這條賽道上舉辦一場馬拉松比賽,該馬拉松全程由 m 個階段組成。其中,第 i 個階段將會從扇區 rounds i 1 開始,到扇區 rounds i 結束。舉例來說,第 1 階段...

Leetcode 第 202 場周賽

感覺就是拼手速的比賽,沒什麼意思,再打幾次把排名打到前面就不打了。存在連續三個奇數的陣列 給你乙個整數陣列 arr,請你判斷陣列中是否存在連續三個元素都是奇數的情況 如果存在,請返回 true 否則,返回 false class solution return false 使陣列中所有元素相等的最小...

LeetCode第202場周賽

用等差數列求和公式計算一下就知道,不管n為多少,所有數的和都是n 2,這樣平均數就是n,由於陣列前半部分和後半部分關於n對稱 關於中間位置對稱的兩個位置的 兩個元素相加和為2 n 所以我們只需要遍歷陣列的前半部分,把所有數和n的差值加起來,就是最終的答案了。首先,題目給的position陣列可能是無...