LeetCode 016 3Sum Closest
2015-12-15 13:14
323 查看
求给定的序列中三个数的和与给定的目标最接近。
这个可以转化为3sum问题,即LeetCode 015的做法,将目标减去一个数,只不过判断的不是为相反数,而是最接近。
这个可以转化为3sum问题,即LeetCode 015的做法,将目标减去一个数,只不过判断的不是为相反数,而是最接近。
class Solution { public: int threeSumClosest(vector<int>& nums, int target) { vector<vector<int> >w; vector<int>temp; int min1=(1<<30); int min2=(1<<30); sort(nums.begin(),nums.end()); for(int ii=0;ii<nums.size();ii++){ int l=ii+1; int target1=target-nums[ii]; int r=nums.size()-1; while(l<r){ int ss=(nums[ii]+nums[l]+nums[r]); if(target1==nums[l]+nums[r])return target; else if(nums[l]+nums[r]<target1){min1=min1<(target-ss)?min1:(target-ss);l++;} else { min2=min2<(ss-target)?min2:(ss-target);r--; } } } return min1<min2?target-min1:target+min2; } };
相关文章推荐
- OSC职位推荐第二季回归,给你一些不一样的!
- postgresql报错Error while loading shared libraries: libpq.so.5: cannot open shared object file
- Python 面向对象
- Gson解析复杂的json数据
- Windows 系统安装 redis 服务
- PE文件详解九:资源结构体
- 获取UGUI子节点在Canvas的屏幕坐标
- 按规律输出歌词
- MFC
- Linux目录/bin、/sbin、/usr/bin、/usr/sbin的区别
- Linux远程备份工具Rsync使用案例
- Android开发艺术2之Activity的启动模式
- Qt学习(9)
- 关于rawurldecode PHP自动解码
- eclipse中在不停止服务器的情况下停止当前调试
- Android面试
- Spark SQL 之 Performance Tuning & Distributed SQL Engine
- Socket的通信
- 如何用crontab定时执行rsync同步命令
- 视频学习站