zoukankan      html  css  js  c++  java
  • LeetCode 3Sum Closest

    Given an array S of n integers, find three integers in S such that the sum is closest to a given number, target. Return the sum of the three integers. You may assume that each input would have exactly one solution.

        For example, given array S = {-1 2 1 -4}, and target = 1.
    
        The sum that is closest to the target is 2. (-1 + 2 + 1 = 2).

     1 public class Solution {
     2     public int threeSumClosest(int[] num, int target) {
     3         int closet=Integer.MAX_VALUE;
     4         int sum=0;
     5         int temp=0;
     6         int abs=0;
     7         if (num.length==0) return 0;
     8         Arrays.sort(num);
     9         for (int i = 0; i < num.length; i++) {
    10             for (int j = i+1; j < num.length;j++) {
    11                 for (int k =j+1; k<num.length; k++) {
    12                     temp=num[i]+num[j]+num[k];
    13                     abs=Math.abs(temp-target);
    14                     if (temp==target)return temp;
    15                     if (abs<closet){
    16                         sum=temp;
    17                         closet=abs;
    18                     }
    19                     if (temp>target)break;
    20                 }
    21             }
    22         }
    23         return sum;
    24     }
    25 }
  • 相关阅读:
    SA(后缀数组)专题总结
    LCT总结
    多项式全家桶
    fft.ntt,生成函数,各种数和各种反演
    P3939 数颜色
    P1879 [USACO06NOV]玉米田Corn Fields
    主席树模板
    P2633 Count on a tree
    P1972 [SDOI2009]HH的项链
    数论
  • 原文地址:https://www.cnblogs.com/birdhack/p/4075227.html
Copyright © 2011-2022 走看看