给定一个整数数组 nums,返回区间和在 [lower, upper] 之间的个数,包含 lower 和 upper。
区间和 S(i, j) 表示在 nums 中,位置从 i 到 j 的元素之和,包含 i 和 j (i ≤ j)。

说明:
最直观的算法复杂度是 O(n2) ,请在此基础上优化你的算法。

示例:

输入: nums = [-2,5,-1], lower = -2, upper = 2,
输出: 3
解释: 3个区间分别是: [0,0], [2,2], [0,2],它们表示的和分别为: -2, -1, 2。

代码


class Solution {public int countRangeSum(int[] nums, int lower, int upper) {TreeMap<Long,Integer> tree=new TreeMap<>();tree.put(0L,1);long sum=0;int count=0;for(int i:nums){sum+=i;for(int num:tree.subMap(sum-upper,true,sum-lower,true).values())
//满足条件区间和的个数count+=num;tree.put(sum,tree.getOrDefault(sum,0)+1);}return count;}
}

leetcode 327. 区间和的个数(treemap)相关推荐

  1. LeetCode 327. 区间和的个数(multiset二分查找/归并排序)

    文章目录 1. 题目 2. 解题 2.1 动态规划超时 2.2 二分查找 2.3 归并排序 1. 题目 给定一个整数数组 nums,返回区间和在 [lower, upper] 之间的个数,包含 low ...

  2. [leetCode]327. 区间和的个数

    题目 链接:https://leetcode-cn.com/problems/count-of-range-sum 给定一个整数数组 nums,返回区间和在 [lower, upper] 之间的个数, ...

  3. 327 区间和的个数

    题目描述 Given an integer array nums, return the number of range sums that lie in [lower, upper] inclusi ...

  4. LeetCode 795. 区间子数组个数

    给定一个元素都是正整数的数组A ,正整数 L 以及 R (L <= R). 求连续.非空且其中最大元素满足大于等于L 小于等于R的子数组个数. 例如 : 输入: A = [2, 1, 4, 3] ...

  5. 区间子数组个数 - LeetCode 795 - 从左向右与从右向左查找

    一.问题描述 给你一个整数数组 nums 和 两个整数:left 及 right .找出 nums 中连续.非空且其中最大元素在范围 [left, right] 内的子数组,并返回满足条件的子数组的个 ...

  6. 树状数组求逆序对_区间和的个数(树状数组)

    327. 区间和的个数 给定一个整数数组 nums,返回区间和在 [lower, upper] 之间的个数,包含 lower 和 upper. 区间和 S(i, j) 表示在 nums 中,位置从 i ...

  7. python acm 素数个数_湘潭大学OJ-1098求区间内素数个数问题

    求区间内素数个数问题 题目描述 Description 给定两个非负整数a,b,其中0<= a,b<=1,000,000,请计算这两个数之间有多少个素数.限制:Time Limit : 1 ...

  8. zoj 2112 树状数组 套主席树 动态求区间 第k个数

    总算是把动态求区间第k个数的算法看明白了. 在主席树的基础上,如果有修改操作,则要通过套树状数组来实现任意区间求第k小的问题. 刚开始看不明白什么意思,现在有一点理解.树状数组的每个元素是一个线段树, ...

  9. [归并排序]leetcode327:区间和的个数(hard)

    题目: 题解: 思路:归并排序 1)对于区间和的快速求解需要使用前缀和,由于 a 中的元素有正有负,所以前缀和数组不是单调递增的,我们可以对前缀和数组进行归并排序,顺便计算区间和的个数,求 pre[j ...

最新文章

  1. 刚开始学python,写的几个小脚本
  2. TI公司dsp的cmd配置文件的说明
  3. ubuntu遇到的 the system is runing low-graphics mode 问题
  4. 项目交付:把Python项目打包成exe文件供客户使用然后收钱
  5. 【Python】statsmodels.formula.api模块中ols参数的解释
  6. 第四届“传智杯”全国大学生IT技能大赛(练习赛)【完结】
  7. 测量脉冲宽度仿真proteus
  8. 2022年java学什么?java怎么学?
  9. hao.360.cn不停跳....
  10. 名正则言顺�谈服装品牌名称(三)
  11. 应届生落北京集体户口
  12. MAC OS搭建pyhton+selenium+pycharm实现web自动化测试
  13. 【网络】VLAN 及其配置详解
  14. android高德地图多个mark点击,Android ---------高德卫星地图绘制多个点和点的点击事件自定义弹窗...
  15. Error:Module ‘javase‘ production: java.lang.ClassCastException:
  16. If I Have One Million
  17. jfif怎么改成jpg,jfif转jpg方法
  18. 阿里巴巴集团主席马云演讲实录(图)
  19. 人人贷等平台都在推的打折债转,背后有何玄机?
  20. 将安卓系统迁移到鸿蒙OS,华为或很快推出鸿蒙系统手机 将安卓系统迁移到鸿蒙OS只需1-2天即可实现...

热门文章

  1. 508. 出现次数最多的子树元素和
  2. 管道符、重定向与环境变量
  3. 组件化与插件化的差别在哪里?内含福利
  4. matlab确定位置,Hurlin 的PSTR模型包,怎样确定位置参数个数
  5. 《Python》进程收尾线程初识
  6. AJAX 异步加载技术
  7. 几种机器学习算法的优缺点
  8. SQL Server的复合索引学习【转载】
  9. C# mysql 插入数据,中文乱码
  10. MongoDB 空指针引用拒绝服务漏洞