1. /*=======================================================
  2. 位查询
  3. http://dsalgo.openjudge.cn/linearlists/3/
  4.  
  5. 总时间限制:5000ms 内存限制: 65536kB
  6. 描述
  7. 给出N个范围在[0, 65535]的整数,编程支持以下的操作:
  8. (1)修改操作:C d,所有的数都增加d。如果超过65535,把结果模65536。 0 <= d <= 65535
  9. (2)查询操作:Q i,统计在N个正整数中有多少个整数其对应的二进制形式的第i位二进制位为非0。0 <= i <= 15。并且最低位i为0。
  10.   最后,输出所有查询操作的统计值。
  11. 输入
  12. 输入的第一行为两个正整数N,M,其中N为操作的整数的个数,而M为具体有多少个操作。
  13. 输入的第二行为N个正整数,为进行操作的N个正整数。
  14. 下面有M行,分别表示M个操作。
  15. 数据范围:N<=100000,M<=200000
  16. 输出
  17. 输出所有查询操作Q的统计值,每一个查询操作统计结果输出为一行。
  18. 样例输入
  19. 3 5
  20. 1 2 4
  21. Q 1
  22. Q 2
  23. C 1
  24. Q 1
  25. Q 2
  26. 样例输出
  27. 1
  28. 1
  29. 2
  30. 1
  31. 提示
  32. 只输出查询操作Q的统计值。
  33. =========================================================*/

题目描述

这个题目要注意输入数据时不要忘记清除回车符。

  1. #include<stdio.h>
  2. #include<math.h>
  3. #include<stdlib.h>
  4. int main()
  5. {
  6. long N,M;
  7. long *a;
  8. char ch;
  9. long j,d;
  10. long i;
  11. long ans;
  12. freopen("data.in","r",stdin);
  13. freopen("data.out","w",stdout);
  14. scanf("%ld%ld",&N,&M);
  15.  
  16. a=(long *)malloc(N*sizeof(long));
  17. for(j=;j<N;j++) scanf("%ld",&a[j]);
  18. getchar();//注意这里。
  19. for(j=;j<M;j++)
  20. {
  21. scanf("%c %ld",&ch,&d);
  22. getchar();//注意这里。
  23. /*printf("%c %ld\n",ch,d);*/
  24.  
  25. if(ch=='C')
  26. {
  27. for(i=;i<N;i++)
  28. a[i]=(a[i]+d)%;
  29. }
  30. else if(ch=='Q')
  31. {
  32. ans=;
  33. d=pow(,d);
  34. for(i=;i<N;i++)
  35. if(a[i]&d) ans++;
  36. printf("%ld\n",ans);
  37. }
  38. else printf("input error!ch==%c\n",ch);
  39. }
  40. return ;
  41. }

位查询【 openjudge数据结构课程练习题】的更多相关文章

  1. php数据结构课程---2、链表(php中 是如何实现单链表的(也就是php中如何实现对象引用的))

    php数据结构课程---2.链表(php中 是如何实现单链表的(也就是php中如何实现对象引用的)) 一.总结 一句话总结: php是弱类型语言,变量即可表示数值,也可表示对象:链表节点的数据域的值就 ...

  2. php数据结构课程---5、树(树的 存储方式 有哪些)

    php数据结构课程---5.树(树的 存储方式 有哪些) 一.总结 一句话总结: 双亲表示法:data parent:$tree[1] = ["B",0]; 孩子表示法:data ...

  3. 查询json数据结构的8种方式

    查询json数据结构的8种方式 你有没有对“在复杂的JSON数据结构中查找匹配内容”而烦恼.这里有8种不同的方式可以做到: JsonSQL JsonSQL实现了使用SQL select语句在json数 ...

  4. POJ——位查询

    3:位查询 查看 提交 统计 提问 总时间限制:  5000ms  内存限制:  65536kB 描述 给出N个范围在[0, 65535]的整数,编程支持以下的操作: (1)修改操作:C d,所有的数 ...

  5. 小菜菜mysql练习解读分析2——查询存在" 01 "课程但可能不存在" 02 "课程的情况(不存在时显示为 null )

    “查询存在" 01 "课程但可能不存在" 02 "课程的情况(不存在时显示为 null )” ——翻译为:课程表里面,存在01的信息,未必满足有02的课程情况 ...

  6. [转载]查询json数据结构的8种方式

    http://wangxinghaoaccp.blog.163.com/blog/static/1158102362012111812255980/ 你有没有对“在复杂的JSON数据结构中查找匹配内容 ...

  7. php数据结构课程---4、栈(是什么)

    php数据结构课程---4.栈(是什么) 一.总结 一句话总结: 栈(stack),它是一种运算受限的线性表.其限制是仅允许在表的一端进行插入和删除运算. 1.栈的链表实现? 定义node,设置属性d ...

  8. php数据结构课程---3、队列(队列实现方法)

    php数据结构课程---3.队列(队列实现方法) 一.总结 一句话总结: 1.数据实现:适用于功能不复杂的情况 2.链表实现:受限链表,只能队头队尾操作:适用于功能复杂情况 1.队列的数组实现注意点? ...

  9. php数据结构课程---1、数据结构基础介绍(程序是什么)

    php数据结构课程---1.数据结构基础介绍(程序是什么) 一.总结 一句话总结: 程序=数据结构+算法 设计好数据结构,程序就等于成功了一半. 数据结构是程序设计的基石. 1.数据的逻辑结构和物理结 ...

随机推荐

  1. BZOJ 1912 巡逻

    重赋边权. #include<iostream> #include<cstdio> #include<cstring> #include<algorithm& ...

  2. .NET的语法优化

    1.多参数 判断 条件 //判断 var fileKey = new { DateStart = search.DateStart.IsNull(), //关开始时间 DateEnd = search ...

  3. AmazeUI布局

    AmazeUI使用了12列的响应式网络系统.使用时需在外围容器上添加.am-g class,在列上添加.am-u-[sm|md|lg]-[1-12] class,然后根据不同的屏幕需求设置不同的宽度. ...

  4. 一个简单的解决方法:word文档打不开,错误提示mso.dll模块错误。

    最近电脑Word无故出现故障,无法打开,提示错误信息如下: 问题事件名称: APPCRASH应用程序名: WINWORD.EXE应用程序版本: 11.0.8328.0应用程序时间戳: 4c717ed1 ...

  5. Inno Setup 安装、卸载前检测进程或服务

    [转载]Inno Setup 安装.卸载前检测进程或服务 (2015-04-24 17:37:20) 转载▼ 标签: 转载   原文地址:Inno Setup 安装.卸载前检测进程或服务作者:一去丶二 ...

  6. WPF入门教程系列(二) 深入剖析WPF Binding的使用方法

    WPF入门教程系列(二) 深入剖析WPF Binding的使用方法 同一个对象(特指System.Windows.DependencyObject的子类)的同一种属性(特指DependencyProp ...

  7. PHP 中替换若干字符串字串为数组中的值,不用循环,非常高效

    替换某个字符串中的一个或若干个字串为数组中某些值 php本身有自带的函数,可以不用循环非常高效的实现其效果: 实例代码:   $phrase  = "You should eat fruit ...

  8. Qt之镜像旋转

    简述 Qt中可以对图片进行任何处理,改变亮度.灰度.透明度.大小.形状等,当然也可以进行镜像旋转! 简单的几行代码,有时就可以事半功倍...甚至图片不用经过美工处理就可以直接拿来使用! 简述 实现 原 ...

  9. 六 GPU 并行优化的几种典型策略

    前言 如何对现有的程序进行并行优化,是 GPU 并行编程技术最为关注的实际问题.本文将提供几种优化的思路,为程序并行优化指明道路方向. 优化前准备 首先,要明确优化的目标 - 是要将程序提速 2 倍? ...

  10. 移动互联网实战--Apple的APNS桩推送服务的实现(2)

    前记: 相信大家在搞IOS推送服务的开发时, 会直接使用javapns api来简单实现, 调试也直连Apple的APNS服务(产品/测试版)来实现. 很少有人会写个APNS的桩服务, 事实也是如此. ...