题目描述:
思路:
首先计算平均值,然后记录其中一个小孩子的糖果数量,最后依次查询另一个孩子与请均值的差,是否存在
代码如下:
class Solution {
public:
vector<int> fairCandySwap(vector<int>& A, vector<int>& B) {
vector<int>res;
int sum1=0,sum2=0;
map<int,int>cnt;
for(int i=0;i<A.size();i++){
sum1+=A[i];
}
for(int i=0;i<B.size();i++){
sum2+=B[i];
}
for(int i=0;i<B.size();i++){
cnt[B[i]]++;
}
int temp=sum1-(sum1+sum2)/2;
for(int i=0;i<A.size();i++){
if(cnt[A[i]-temp]>0){
res.push_back(A[i]);
res.push_back(A[i]-temp);
return res;
}
}
return res;
}
};