zoukankan      html  css  js  c++  java
  • 888.Fair Candy Swap

    Alice and Bob have candy bars of different sizes: A[i] is the size of the i-th bar of candy that Alice has, and B[j] is the size of the j-th bar of candy that Bob has.

    Since they are friends, they would like to exchange one candy bar each so that after the exchange, they both 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.)

    Return an integer array ans where ans[0] is the size of the candy bar that Alice must exchange, and ans[1] is the size of the candy bar that Bob must exchange.

    If there are multiple answers, you may return any one of them. It is guaranteed an answer exists.

    Example 1:

    Input: A = [1,1], B = [2,2]
    Output: [1,2]

    Example 2:

    Input: A = [1,2], B = [2,3]
    Output: [1,2]

    Example 3:

    Input: A = [2], B = [1,3]
    Output: [2,3]

    Example 4:

    Input: A = [1,2,5], B = [2,4]
    Output: [5,4]

    Note:

    • 1 <= A.length <= 10000
    • 1 <= B.length <= 10000
    • 1 <= A[i] <= 100000
    • 1 <= B[i] <= 100000
    • It is guaranteed that Alice and Bob have different total amounts of candy.
    • It is guaranteed there exists an answer.
    class Solution:
        def fairCandySwap(self, A, B):
            """
            :type A: List[int]
            :type B: List[int]
            :rtype: List[int]
            """
            flag = False
            if sum(A)>sum(B):
                temp = A
                A = B
                B = temp
                flag = True
            a = sum(A)
            b = sum(B)
            total = (a + b)//2
            # print(a,b,total)
            B = set(B)
            for i in A:
                # print(i,total-a+i)
                if total-a+i in B:
                    if flag:
                        return [total-a+i,i]
                    else:
                        return [i,total-a+i]
    
  • 相关阅读:
    排序算法合集(冒泡,选择,插入,堆排,快排)
    codeforces 632+ E. Thief in a Shop
    nyoj-一笔画问题-欧拉图+联通判定
    hdu-1179-二分图最大匹配
    hdu-2063-二分图最大匹配
    (转)二分图的最大匹配、完美匹配和匈牙利算法
    hdu-2444-二分图判定+最大分配
    C
    E
    C
  • 原文地址:https://www.cnblogs.com/bernieloveslife/p/9751136.html
Copyright © 2011-2022 走看看