LeetCode

LeetCode-18 四数之和

nkul · 9月28日 · 2020年 · 23次已读

LeetCode-15 三数之和

2020-9-27 0

和三数之和完全一样,利用模板即可!

class Solution {
public:
    vector> fourSum(vector& nums, int target) {
        sort(nums.begin(),nums.end());
        vector> res;
        for(int i = 0;i < nums.size(); i++){
            if(i && nums[i] == nums[i-1]) continue;
            for(int j = i + 1; j < nums.size(); j++ ){
                if( j > i + 1 && nums[j] == nums[j-1]) continue;
                for(int k = j + 1 ,u = nums.size() - 1;k < u ; k++ ){
                    if( k > j + 1 && nums[k] == nums[k-1]) continue;
                    while( k + 1 < u && nums[i]+nums[j]+nums[k]+nums[u-1] >= target) u--;
                    if(nums[i]+nums[j]+nums[k]+nums[u] == target){
                        res.push_back({nums[i],nums[j],nums[k],nums[u]});
                    }
                } 
            }
        }
        return res;
    }
};


0 条回应

必须 注册 为本站用户, 登录 后才可以发表评论!