在O(1)的时间内计算n个整数落在区间[a,b]的个数

预处理时间为O(n+k)
算法导论第三版8.2-4题

int find_inverter_count(int *array,int length,int maximum,int inverter_left,int inverter_right)
{if(inverter_left<0 || inverter_right>maximum || inverter_right<inverter_left){perror("inverter error");return -1;}int *count_array = new int[maximum+1];for (int i = 0; i < maximum+1; ++i) {count_array[i] = 0;}for (int i = 0; i < length; ++i) {count_array[array[i]] = count_array[array[i]] + 1;}for (int i = 1; i < maximum+1; ++i) {count_array[i] = count_array[i] + count_array[i-1];}int count = 0;if(inverter_left == 0)count =  count_array[inverter_right];elsecount =  count_array[inverter_right] - count_array[inverter_left - 1];delete [] count_array;return count;
}

在O(1)的时间内计算n个整数落在区间[a,b]的个数(预处理时间为O(n+k))相关推荐

  1. Java黑皮书课后题第7章:*7.11(统计:计算标准差)编程练习题5.45计算数字的标准差。本题…计算标准差,使用一个数组存储x的每个数。编写测试程序,提示用户输入10个数字,显示平均值和标准差

    7.11(统计:计算标准差)编程练习题5.45计算数字的标准差.本题-计算标准差,使用一个数组存储x的每个数.编写测试程序,提示用户输入10个数字,显示平均值和标准差 题目 题目描述与运行示例 破题 ...

  2. C语言怎么处理多位数,急~~~~~~C语言问题~~怎么把这个计算程序改成能计算多位整数? 爱问知识人...

    这个程序只可以做1位整数的4则运算和括号内计算,怎么改动可以计算多位整数呢? #include #include int opnd_top=-1,optr_top=-1; double 这个程序只可以 ...

  3. 【通信】盖氏圆盘方法(GDE)计算均匀直线阵(ULA)中信号源个数附matlab代码

    1 简介 信源数估计是空间谱估计中的关键技术,研究符合实际应用环境的稳健的信源数估计方法具有十分重要的现实意义.基于空间谱估计中用于估计信源数的传统盖氏圆盘法,该程序用于计算均匀直线阵(ULA)中信号 ...

  4. C语言实现计算数的整数次幂

    C语言实现计算数的整数次幂 程序分析: 1.while循环.输入1.22,5,scanf()成功读取两值,并返回2,循环继续. 因为scanf()跳过空白,所以可以像输出示例那样,分多行输入. 但是输 ...

  5. ZT 计算一个无符整数中1Bit的个数(1) 2010-04-20 10:52:48

    计算一个无符整数中1Bit的个数(1) 2010-04-20 10:52:48 分类: C/C++ [转]计算一个无符整数中1Bit的个数(1) Count the number of bits th ...

  6. python用for循环求和1到100_python使用for循环计算0-100的整数的和方法

    python使用for循环计算0-100的整数的和方法 更新时间:2019年02月01日 09:23:07 作者:Lucifer-L 今天小编就为大家分享一篇python使用for循环计算0-100的 ...

  7. 输入两个自然数min,max,计算、输出[min,max]中的超级素数的个数#C语言

    题目:请编写程序,输入两个自然数min,max,计算.输出[min,max]中的超级素数的个数 超级素数: 一个素数,依次从低位去掉一位,二位,--,若所得的各数仍都是素数,则称超级素数. 例如:73 ...

  8. 计算FLT_MAX的整数位长度

    传统方法 先把 float 型转成 int 型,但是由于 float 是 4个字节,某些数值超出了 int 的范围,所以在计算位数时,先将数字多次 / 10000 或者任意10的倍数,降低数的量级,再 ...

  9. 编写一程序计算到现在为止已经过了多少天,现在的时间是几时几分几秒

    编写一程序计算到现在为止已经过了多少天,现在的时间是几时几分几秒. 题目:假设从键盘输入从某日午夜零点到现在已过去的时间(单位:秒),编写一程序计算到现在为止已经过了多少天,现在的时间是几时几分几秒. ...

最新文章

  1. v9更新栏目缓存提示PHP has encountered a Stack overflow解决方法
  2. 神策 FM | 数据驱动时代,你的岗位如何转变?
  3. OpenGL HDR色调映射的实例
  4. Enterprise search - Build Search dropdown list - cache issue
  5. 发放MindMeister内测邀请,仅20
  6. codeforces B. Friends and Presents(二分+容斥)
  7. synchronized 底层了解一下...
  8. 动态库注入--APC注入
  9. CoreAnimation汇总
  10. 【转载】Altera官方资料整理
  11. 吉林大学超星MOOC学习通高级语言程序设计 C++ 实验06 递归程序设计(2021级)
  12. 初识大数据 小孩子都懂的大数据
  13. 随机森林算法工作原理
  14. Flutter —快速开发的IDE快捷方式
  15. 华为认证云服务工程师(HCIA-Cloud ServiceV3.0)-- 认证介绍
  16. 微信小程序接入易云章(H5)人脸识别 uniApp
  17. 数字电路2. OC门、OD门、三态门
  18. 7-24 程序改错题3 (5 分)
  19. 华工 计算机网络 第二次 作业,华工网络教育计算机网络作业及答案
  20. 影像分辨率、地面分辨率、比例尺及DPI之间的关系

热门文章

  1. Android之提示java.lang.RuntimeException: Parcel: unable to marshal value Image问题
  2. Android Studio之编译提示\app\src\main\res\values\colors.xml:1:1 Error:前言有不允许的内容
  3. Android studio之NDK integration is deprecated in the current plugin解决办法
  4. LeetCode之Island Perimeter
  5. Android之用tcpdump常用抓包命令使用总结
  6. oracle存档模式,Oracle的备份和存档模式
  7. 软件测试技术——软件测试概述
  8. 发了篇paper,双非二本的她直博浙大
  9. 生病了女朋友说要「陪床」,结果真的是陪床不是陪我......
  10. 这是对R的误解!R的应用原来这么广!