4Sum
来源:互联网 发布:unity3d制作2d酷跑 编辑:程序博客网 时间:2024/05/06 06:28
class Solution {public: vector<vector<int>> fourSum(vector<int>& nums, int target) { int size=nums.size(); vector<vector<int>> result; vector<int> cur; if(size<4) return result; sort(nums.begin(),nums.end()); for(int i=0;i<=size-4;++i) { while(i<=size-4&& i>0 && nums[i]==nums[i-1]) ++i; for(int j=i+1;j<=size-3;++j) { while(j<=size-3&&j>i+1 && nums[j]==nums[j-1]) ++j; int index1=j+1; int index2=size-1; while(index1<index2) { int sum=nums[i]+nums[j]+nums[index1]+nums[index2]; if(sum==target) { cur.push_back(nums[i]); cur.push_back(nums[j]); cur.push_back(nums[index1]); cur.push_back(nums[index2]); result.push_back(cur); cur.clear(); ++index1; --index2; while(index1<index2 && nums[index1]==nums[index1-1]) ++index1; while(index1<index2 && nums[index2]==nums[index2+1]) --index2; } else if(sum>target) { --index2; while(index1<index2 && nums[index2]==nums[index2+1]) --index2; } else { ++index1; while(index1<index2 && nums[index1]==nums[index1-1]) ++index1; } } } } return result; }};
0 0
- 【Leetcode】4Sum (Sum)
- leetcode 2 sum 3sum 4sum
- 3Sum 3Sum Closest 4Sum
- 3Sum & 3Sum Closest & 4Sum
- 2Sum 3Sum 4Sum
- 3sum、3Sum closet、 4sum
- 3Sum, 3Sum Closest, 4 Sum
- Leetcode 2SUM-3SUM-4SUM
- Leetcode-2sum,3sum,4sum
- leetcode 2 sum & 3 sum & 4 sum
- 4Sum
- 4Sum
- 4Sum
- 4Sum
- 4Sum
- 4Sum
- 4Sum
- 4Sum
- android不同activity之间传送数据值得方法
- Exchange Server2013 系列九:常规配置
- C++ 虚函数解析
- 【LeetCode刷题记录】Reverse Bits
- Django+Markdown2+bootstrap+google-code-prettify
- 4Sum
- UVa12230 - Crossing Rivers (数学期望)
- Exchange Server2013 系列十:证书的配置
- 3.8 求二叉树中节点的最大距离
- ECC系统发送IDoc物料主数据(MATMAS)到周边系统的配置步骤
- 剑指offer-14 调整数组顺序使奇数位于偶数前面
- 面试题1——栈的最大值问题
- rose 安装
- Exchange Server2013系列十一:数据库基本管理