2824. 统计和小于目标的下标对数目 --力扣 --JAVA

简介: 给你一个下标从 0 开始长度为 n 的整数数组 nums 和一个整数 target ,请你返回满足 0 <= i < j < n 且 nums[i] + nums[j] < target 的下标对 (i, j) 的数目。

 题目

给你一个下标从 0 开始长度为 n 的整数数组 nums 和一个整数 target ,请你返回满足 0 <= i < j < n 且 nums[i] + nums[j] < target 的下标对 (i, j) 的数目。

解题思路

    1. 对数组进行排序,可以利用List自带的sort函数传递比较规则(代码中的是倒序,也可以直接传null为默认的顺序排序)
    2. 通过两层循环进行遍历,第二层循环当出现符合条件的则剩余元素都符合,可以跳出当前循环减少消耗;

    代码展示

    class Solution {
        public int countPairs(List<Integer> nums, int target) {
            nums.sort((a, b) -> b - a);
            int sum = 0;
            int n = nums.size();
            for (int i = 0; i < n; i++){
                int temp = nums.get(i);
                for (int j = i + 1; j < n; j++){
                    if(temp + nums.get(j) < target){
                        sum += n - j;
                        break;
                    }
                }
            }
            return sum;
        }
    }

    image.gif


    目录
    相关文章
    |
    Unix Shell Linux
    LeetCode刷题 Shell编程四则 | 194. 转置文件 192. 统计词频 193. 有效电话号码 195. 第十行
    本文提供了几个Linux shell脚本编程问题的解决方案,包括转置文件内容、统计词频、验证有效电话号码和提取文件的第十行,每个问题都给出了至少一种实现方法。
    597 6
    LeetCode刷题 Shell编程四则 | 194. 转置文件 192. 统计词频 193. 有效电话号码 195. 第十行
    |
    安全 Java API
    【Java性能优化】Map.merge()方法:告别繁琐判空,3行代码搞定统计累加!
    在日常开发中,我们经常需要对Map中的值进行累加统计。}else{代码冗长,重复调用get()方法需要显式处理null值非原子操作,多线程下不安全今天要介绍的方法,可以让你用一行代码优雅解决所有这些问题!方法的基本用法和优势与传统写法的对比分析多线程安全版本的实现Stream API的终极优化方案底层实现原理和性能优化建议一句话总结是Java 8为我们提供的Map操作利器,能让你的统计代码更简洁、更安全、更高效!// 合并两个列表});简单累加。
    1276 0
    |
    存储 Java BI
    java怎么统计每个项目下的每个类别的数据
    通过本文,我们详细介绍了如何在Java中统计每个项目下的每个类别的数据,包括数据模型设计、数据存储和统计方法。通过定义 `Category`和 `Project`类,并使用 `ProjectManager`类进行管理,可以轻松实现项目和类别的数据统计。希望本文能够帮助您理解和实现类似的统计需求。
    431 17
    |
    Java Serverless
    Java字符个数统计代码
    Java字符个数统计代码
    390 6
    |
    存储 算法 Java
    LeetCode初级算法题:反转链表+统计N以内的素数+删除排序数组中的重复项Java详解
    LeetCode初级算法题:反转链表+统计N以内的素数+删除排序数组中的重复项Java详解
    455 0
    |
    存储 算法
    经典的滑动窗口的题目 力扣 2799. 统计完全子数组的数目(面试题)
    经典的滑动窗口的题目 力扣 2799. 统计完全子数组的数目(面试题)
    319 0
    2670.找出不同元素数目差数组-力扣(LeetCode)
    2670.找出不同元素数目差数组-力扣(LeetCode)
    264 0
    |
    算法 Java
    力扣经典150题第二十三题:找出字符串中第一个匹配项的下标
    力扣经典150题第二十三题:找出字符串中第一个匹配项的下标
    219 0
    java使用Files.walkFileTree统计文件夹下的文件夹和文件数量
    java使用Files.walkFileTree统计文件夹下的文件夹和文件数量
    473 0