zoukankan      html  css  js  c++  java
  • [LC] 1099. Two Sum Less Than K

    Given an array A of integers and integer K, return the maximum S such that there exists i < j with A[i] + A[j] = S and S < K. If no i, j exist satisfying this equation, return -1.

    Example 1:

    Input: A = [34,23,1,24,75,33,54,8], K = 60
    Output: 58
    Explanation: 
    We can use 34 and 24 to sum 58 which is less than 60.
    

    Example 2:

    Input: A = [10,20,30], K = 15
    Output: -1
    Explanation: 
    In this case it's not possible to get a pair sum less that 15.
    

    Note:

    1. 1 <= A.length <= 100
    2. 1 <= A[i] <= 1000
    3. 1 <= K <= 2000
    class Solution {
        public int twoSumLessThanK(int[] A, int K) {
            if (A == null || A.length == 0) {
                return -1;
            }
            Arrays.sort(A);
            int start = 0, end = A.length - 1;
            int res = -1;
            while (start < end) {
                if (A[start] + A[end] >= K) {
                    end -= 1;
                } else {
                    res = Math.max(res, A[start] + A[end]);
                    start += 1;
                }
            }
            return res;
        }
    }
  • 相关阅读:
    海报
    mailto
    tab+tab
    tab22
    tab
    line-height属性详解
    vertical-align属性详解
    窗口关系及框架、窗口位置、窗口大小、导航和打开窗口
    cursor属性
    深入了解css3新特性
  • 原文地址:https://www.cnblogs.com/xuanlu/p/12182073.html
Copyright © 2011-2022 走看看