16. 3Sum Closest
来源:互联网 发布:手机照片怎么导入mac 编辑:程序博客网 时间:2024/06/07 10:03
这道题是自己纯敲的哟!(骄傲脸)而且很快呐才12ms!
不过也敲了很久就是了……
一开始以为和3sum差不多……后来发现各种不一样……还忘记了自己是sort过才开始找的,结果在纸上写出来的结果各种不对……
一开始没有给r赋初值,也没有考虑到j和k的更新条件。其实主要是j和k的更新条件没有考虑好,改了好几次,一开始防止duplicate的while循环也没有放进if里面,反正就是各种改啦……
class Solution {public: int threeSumClosest(vector<int>& nums, int target) { sort(nums.begin(), nums.end()); int r=nums[0]+nums[1]+nums[nums.size()-1]; int i,j,k,n=1; for(i=0;i<nums.size();i++){ while(i!=0&&nums[i]==nums[i-1]) i++; j=i+1; k=nums.size()-1; while(j<k){ int sum=nums[i]+nums[j]+nums[k]; if(sum==target) return target; if(abs(sum-target)<abs(r-target)) r=sum; if(sum>target) {k--;while(k > j && nums[k] == nums[k+1]) k --;} else {j++;while(j < k && nums[j] == nums[j-1]) j ++;} } } return r; } };
0 0
- 16. 3Sum Closest
- 16. 3Sum Closest
- 16. 3Sum Closest
- 16. 3Sum Closest
- 16. 3Sum Closest
- 16. 3Sum Closest
- 16. 3Sum Closest
- 16. 3Sum Closest
- 16. 3Sum Closest
- 16. 3Sum Closest
- 16. 3Sum Closest
- 16. 3Sum Closest
- 16. 3Sum Closest
- 16. 3Sum Closest
- 16. 3Sum Closest
- 16. 3Sum Closest
- 16. 3Sum Closest
- 16. 3Sum Closest
- request转发与response重定向(面试题)
- Java中的方法的重写与重载
- CODEVS 1017乘积最大
- ubuntu16.04更换为国内源
- 如何打一手好Log
- 16. 3Sum Closest
- 关于对象运行时方法匹配的问题
- hdoj 题目
- 排序算法二:简单选择排序
- Java 注解-Annotation
- 当自增/减(++/--)遇上多线程
- 如何利用SQL注入进行爆库
- 利用GPIO的命令控制树梅派的GPIO
- VS2013+QT5简单使用