lintcode 1594 公平的糖果交換

2021-09-26 05:24:46 字數 800 閱讀 3108

愛麗絲和鮑勃有不同大小的糖果棒:a[i] 是愛麗絲擁有的第 i 塊糖的大小,b[j] 是鮑勃擁有的第 j 塊糖的大小。

因為他們是朋友,所以他們想交換乙個糖果棒,這樣交換後,他們都有相同的糖果總量。(乙個人擁有的糖果總量是他們擁有的糖果棒大小的總和。)

返回乙個整數陣列 ans,其中 ans[0] 是愛麗絲必須交換的糖果棒的大小,ans[1] 是 bob 必須交換的糖果棒的大小。

如果有多個答案,你可以返回其中任何乙個。保證答案存在。

樣例 1:

輸入: a = [1,1], b = [2,2]

輸出: [1,2]

解釋:

a和b只有交換[1, 2]能達到相同的糖果總數

樣例 2:

輸入: a = [2], b = [1,3]

輸出: [2,3]

解釋:

a和b只有交換[2, 3]能達到相同的糖果總數

注意事項

1 <= a.length <= 10000

1 <= b.length <= 10000

1 <= a[i] <= 100000

1 <= b[i] <= 100000

保證愛麗絲與鮑勃的糖果總量不同。

答案肯定存在。

class solution 

for (auto i : b)

for (int i : a)

t += j;//如果不相等,重新置為愛麗絲給鮑勃糖果數後的情況

k -= j;}}

}};

公平鎖和非公平鎖的區別

鎖的公平性是相對於獲取鎖的順序而言的,如果是乙個公平鎖,那麼鎖的獲取順序就應該符合請求的絕對時間順序,也就是fifo。在上面分析的例子來說,只要cas設定同步狀態成功,則表示當前執行緒獲取了鎖,而公平鎖則不一樣,差異點有兩個 fairsync.tryacquire final void lock 非...

Leetcode 1594 矩陣的最大非負積

給你乙個大小為 rows x cols 的矩陣 grid 最初,你位於左上角 0,0 每一步,你可以在矩陣中 向右 或 向下 移動。在從左上角 0,0 開始到右下角 rows 1,cols 1 結束的所有路徑中,找出具有 最大非負積 的路徑。路徑的積是沿路徑訪問的單元格中所有整數的乘積。返回 最大非...

LeetCode1594 矩陣的最大非負積

給你乙個大小為 rows x cols 的矩陣 grid 最初,你位於左上角 0,0 每一步,你可以在矩陣中 向右 或 向下 移動。在從左上角 0,0 開始到右下角 rows 1,cols 1 結束的所有路徑中,找出具有 最大非負積 的路徑。路徑的積是沿路徑訪問的單元格中所有整數的乘積。返回 最大非...