- Related Questions & Answers
- 10 Interesting Python Cool Tricks
- howdoi in Python
- How to print without newline in Python?
- How to download Google Images using Python
- How to clear screen in python?
- get() method for dictionaries in Python
- Generating random number list in Python
- gcd() function Python
- frozenset() in Python
- floor() and ceil() function Python
- float() in Python
- Finding Mean, Median, Mode in Python without Libraries
- Find the k most frequent words from data set in Python
- Find size of a list in Python
- Find length of a string in python (3 ways)

- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who

Suppose A and B are two friends. They have candy bars of different sizes. Here A[i] is the size of the i-th bar of candy owned by A, and B[j] is the size of the j-th bar of candy owned by B.

Since they are friends, they want to exchange one candy bar each so that after the exchange, both A and B have the same total amount of candy. (The total amount of candy a person has is the sum of the sizes of candy bars they have.) We have to return an integer array suppose ans, where ans[0] is the size of the candy bar that A must exchange, and ans[1] is the size of the candy bar that B must exchange. If there are multiple answers, we will return only one of them.

For example, if A = [1, 2] and B = [2, 3], then output will be [1, 2]

To solve this, we will follow these steps −

- Take the difference between the sum of A and sum of B, then divide it by 2, and take the integer part into diff
- convert B into a set
- for i in A
- if i – diff in B, then return [i, i – diff]

Let us see the following implementation to get better understanding −

class Solution(object): def fairCandySwap(self, A, B): """ :type A: List[int] :type B: List[int] :rtype: List[int] """ diff = (sum(A) - sum(B))//2 B=set(B) for i in A: if i- diff in B: return [i,i-diff]

[1,2] [2,3]

[1,2]

Advertisements