LeetCode 888 公平的糖果交換

2021-10-23 12:25:06 字數 1150 閱讀 4805

leetcode習題答案彙總

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

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

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

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

示例 1:

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

輸出:[1,2]

示例 2:

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

輸出:[1,2]

示例 3:

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

輸出:[2,3]

示例 4:

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

輸出:[5,4]

1 <= a.length <= 10000

1 <= b.length <= 10000

1 <= a[i] <= 100000

1 <= b[i] <= 100000

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

答案肯定存在。

分析:

**:

class

solution

:def

faircandyswap

(self, a: list[

int]

, b: list[

int])-

> list[

int]

: sa =

sum(a)

sb =

sum(b)

setb =

set(b)

for x in a:

if x +

(sb - sa)/2

in setb:

return

[x, x +

(sb - sa)//2

]

結果:

Leetcode 888 公平的糖果棒交換

三 總結 愛麗絲和鮑勃有不同大小的糖果棒 a i 是愛麗絲擁有的第 i 根糖果棒的大小,b j 是鮑勃擁有的第 j 根糖果棒的大小。因為他們是朋友,所以他們想交換一根糖果棒,這樣交換後,他們都有相同的糖果總量。乙個人擁有的糖果總量是他們擁有的糖果棒大小的總和。返回乙個整數陣列 ans,其中 ans ...

leetcode 888 公平的糖果棒交換

愛麗絲和鮑勃有不同大小的糖果棒 a i 是愛麗絲擁有的第 i 根糖果棒的大小,b j 是鮑勃擁有的第 j 根糖果棒的大小。因為他們是朋友,所以他們想交換一根糖果棒,這樣交換後,他們都有相同的糖果總量。乙個人擁有的糖果總量是他們擁有的糖果棒大小的總和。返回乙個整數陣列 ans,其中 ans 0 是愛麗...

leetcode 888 公平的糖果棒交換

888.公平的糖果棒交換 愛麗絲和鮑勃有不同大小的糖果棒 a i 是愛麗絲擁有的第i根糖果棒的大小,b j 是鮑勃擁有的第j根糖果棒的大小。因為他們是朋友,所以他們想交換一根糖果棒,這樣交換後,他們都有相同的糖果總量。乙個人擁有的糖果總量是他們擁有的糖果棒大小的總和。返回乙個整數陣列ans,其中an...