美文网首页
【竞赛题】6355. 统计公平数对的数目

【竞赛题】6355. 统计公平数对的数目

作者: 程序员小2 | 来源:发表于2023-02-11 11:17 被阅读0次

题目:

给你一个下标从 0 开始、长度为 n 的整数数组 nums ,和两个整数 lower 和 upper ,返回 公平数对的数目 。

如果 (i, j) 数对满足以下情况,则认为它是一个 公平数对 :

0 <= i < j < n,且
lower <= nums[i] + nums[j] <= upper

示例 1:

输入:nums = [0,1,7,4,4,5], lower = 3, upper = 6
输出:6
解释:共计 6 个公平数对:(0,3)、(0,4)、(0,5)、(1,3)、(1,4) 和 (1,5) 。
示例 2:

输入:nums = [1,7,9,2,5], lower = 11, upper = 11
输出:1
解释:只有单个公平数对:(2,3) 。

提示:

1 <= nums.length <= 10^5
nums.length == n
-10^9 <= nums[i] <= 10^9
-10^9 <= lower <= upper <= 10^9

java代码:

class Solution {
    public long countFairPairs(int[] nums, int lower, int upper) {
        Arrays.sort(nums);
        int n = nums.length;

        long c = 0;

        int l = 0;
        int r = n-1;
        while(l<r) {
            int temp = nums[l]+nums[r];
            if(temp<lower) {
                l++;
            }else if(temp>upper) {
                r--;
            }else {
                c++;

                int t2 = r;
                r--;
                while(l<r) {
                    if(nums[r]==nums[r+1]) {
                        c++;
                        r--;
                    }else {
                        temp = nums[l]+nums[r];
                        if(temp<lower) {
                            break;
                        }else {
                            c++;
                            r--;
                        }
                    }
                }

                l++;
                r = t2;
            }
        }

        return c;
    }
}

相关文章

  • 【竞赛题】6355. 统计公平数对的数目

    题目: 给你一个下标从 0 开始、长度为 n 的整数数组 nums ,和两个整数 lower 和 upper ,返...

  • 竞赛题-6265. 统计相似字符串对的数目

    题目: 给你一个下标从 0 开始的字符串数组 words 。 如果两个字符串由相同的字符组成,则认为这两个字符串 ...

  • 5683. 统计点对的数目

    5683. 统计点对的数目[https://leetcode-cn.com/problems/count-pair...

  • Linux连接数

    统计已建立的连接数 统计某个端口的连接数 统计TCP不同状态的连接数 对已建立的tcp连接且对目标地址的端口号进行...

  • Shell脚本统计DNA序列中碱基数目

    为了不编写perl脚本统计DNA中各碱基的数目,我采用了shell脚本直接对DNA序列进行统计。我的DNA序列如下...

  • 微生物

    在这大千世界, 有着难以统计的生物生活在我们周围, 其中数微生物的种类 和数目最多, 但是由于其形态微小,...

  • ggplot2绘制richness(物种丰富度)指数图

    这一节我们来根据OTU表计算样本的richness即丰富度指数,统计样本中不为0的数目累加即可 点击原文链接获取数...

  • 词性标注

    关于词性标注歧义问题,对Brown语料库进行统计,按歧义程度排列的词型数目(The number of word ...

  • aggregate获取聚合后结果的总数

    获取符合某些结果的聚合后的结果数目 注意:不要获取数后丢进内存里用len()统计数量,效劳低,且报表都是数据量很大...

  • nginx日志统计分析的相关常用命令

    查询指定关键词行数 统计PV,UV数 统计所有的PV数 统计当天的PV数 统计指定某一天的PV数 根据访问IP统计...

网友评论

      本文标题:【竞赛题】6355. 统计公平数对的数目

      本文链接:https://www.haomeiwen.com/subject/fqwlkdtx.html