首页 > 其他分享 >数对数目

数对数目

时间:2022-10-27 09:34:22浏览次数:49  
标签:10 数对 满足 lt 序列 数目 leqslant

题目

给定一个长度为 \(n\) 的序列 \(a_1,a_2,\ldots,a_n\)。请你找出一共有多少个数对 \((i,j)\) 满足 \(a[i] \lt i \lt a[j] \lt j\ , 1 \leqslant i, j \leqslant n\) 。
例如,长度为 \(5\) 的序列 \([1, 1, 2, 3, 8, 2, 1, 4]\),有 \(3\) 个满足要求的数对:\((2,4)\)、\((2,8)\)、\((3,8)\):

  1. 数对 \((2,4)\) 有 \(a[2]=1\), \(a[4]=3\) 满足 \(a[2] \lt 2 \lt a[4] \lt 4\);
  2. 数对 \((2,8)\) 有 \(a[2]=1\), \(a[8]=4\) 满足 \(a[2] \lt 2 \lt a[8] \lt 8\);
  3. 数对 \((3,8)\) 有 \(a[3]=2\), \(a[8]=4\) 满足 \(a[3] \lt 3 \lt a[8] \lt 8\)。

限制:

  • \(1 \leqslant n \leqslant 2 \times 10^6\)
  • \(0 \leqslant a_i \leqslant 10^9\)

算法分析

标签:10,数对,满足,lt,序列,数目,leqslant
From: https://www.cnblogs.com/Melville/p/16830980.html

相关文章

  • 线性DP-2444. 统计定界子数组的数目
    问题描述给你一个整数数组nums和两个整数minK以及maxK。nums的定界子数组是满足下述条件的一个子数组:子数组中的最小值等于minK。子数组中的最大值等于m......
  • 仿函数(函数对象)functor的用法
    引子在set的类模板中,插入元素是会自动排序的,那么这是如何实现的呢。默认的set<int> setl;这种写法,他会调用默认的less函数对象less函数对象实现比较,为排序提供依据,se......
  • LeetCode2447 最大公因数等于 K 的子数组数目 题解
    看到这题,发现可以直接枚举字串进行check,复杂度是\(\mathcalO(n^2(n+\logw))\),但是可以固定左端点,向右推右端点统计答案优化到\(\mathcalO(n(n+\logw))\)。虽然这里......
  • 对多分类任务中的模型评估隐藏层层数和隐藏单元个数对实验结果的影响
    8、对多分类任务中的模型评估隐藏层层数和隐藏单元个数对实验结果的影响1.确定隐藏层的层数对于一些很简单的数据集,一层甚至两层隐藏元都已经够了,隐藏层的层数不一定设置......
  • 寻求两个数对之间的最大乘积
    1.问题描述两个数对(a,b)和(c,d)之间的乘积差定义为(a*b)-(c*d)。例如,(5,6)和(2,7)之间的乘积差是(5*6)-(2*7)=16。给你一个整数数组nums......
  • 【算法】求解满足条件整数对(C++源码)
    【算法】求解满足条件整数对(C++源码)​​一、问题描述​​​​二、输入描述​​​​三、输出描述​​​​四、步骤描述​​​​五、运行结果截图​​​​六、源代码(C++)​​一......
  • 【LeetCode】1512.好数对的数目(C++)
    1512.好数对的数目(C++)​​1题目描述​​​​2示例描述​​​​2.1示例1​​​​2.2示例2​​​​2.3示例3​​​​3解题提示​​​​4源码详解(C++)​​1题目描述......
  • 【LeetCode】1252. 奇数值单元格的数目(C++)
    1252.奇数值单元格的数目(C++)​​1题目描述​​​​2示例描述​​​​2.1示例1​​​​2.2示例2​​​​3解题提示​​​​4源码详解(C++)​​1题目描述给你一个n......
  • 【LeetCode】1399. 统计最大组的数目(C++)
    1399.统计最大组的数目(C++)​​1题目描述​​​​2示例描述​​​​2.1示例1​​​​2.2示例2​​​​2.3示例3​​​​2.4示例4​​​​3解题提示​​​​4解题思......
  • 6205.反转之后不同整数的数目
    LeetCode-315-2022-10-1610:306205.反转之后不同整数的数目给你一个由正整数组成的数组nums。你必须取出数组中的每个整数,反转其中每个数位,并将反转后得到的数字添加......