HDU1166树状数组
来源:互联网 发布:张大奕淘宝店铺 编辑:程序博客网 时间:2024/04/30 11:12
题目链接
http://acm.hdu.edu.cn/showproblem.php?pid=1166
题目分析
将一组数组s[N]
输入Query a b,输出SUM(sa + …… + sb)
输入Add a b,s[a] = s[a] + b
输入Sub a b,s[a] = s[a] - b
数组动态求和,明显的树状数组,调用树状数组模版:树状数组
代码:
#include <iostream>#include "TreeArray.h"using namespace std;int main(){ int t,cnt,i, n, b, c;char a[6];//调用 树状数组模版TreeArray Tra(1); scanf("%d",&t); for(cnt=1;cnt<=t;cnt++) {//树状数组初始化Tra.clear(); printf("Case %d:\n",cnt);//输入数组的初始值 scanf("%d",&n); for(i=1;i<=n;i++) { int x; scanf("%d",&x); Tra.modify(i,x); }//动态修改和求和 while(scanf("%s",a)) { if(strcmp(a,"End")==0)break; scanf("%d%d",&b,&c); if(strcmp(a,"Add")==0)Tra.modify(b, c); else if(strcmp(a,"Sub")==0)Tra.modify(b, -c); else printf("%d\n",Tra.sum(c)-Tra.sum(b-1)); } } return 0;}
总结:
原来用C++标准输入输出能过,现在TLE,要改用C的输入输出才行。
复习了一下树状数组
- hdu1166树状数组
- HDU1166树状数组
- hdu1166 树状数组
- hdu1166树状数组
- 树状数组 HDU1166
- hdu1166(树状数组)
- 树状数组-HDU1166
- Hdu1166 树状数组
- hdu1166 树状数组
- HDU1166(树状数组)
- 树状数组模板 HDU1166
- hdu1166(树状数组)
- HDU1166树状数组
- 树状数组专题(五)hdu1166
- 树状数组简单运用 hdu1166
- hdu1166-敌兵布阵-树状数组
- hdu1166(树状数组入门)
- hdu1166 敌兵布阵 +树状数组
- 简单、彻底的解决 iOS 5.0.1 完美越狱 iBooks 秒退问题
- Spring3 MVC 深入研究
- c++中宏定义## 的用法
- 缩小造成问题的原因
- VC调用C#写的DLL
- HDU1166树状数组
- Thread Id and Thread Handle
- SQL 数据库备份
- 创建VLAN的程序代码
- iphone4原理图
- 公司HR面试经常问的问题及回答思路
- 内存颗粒和模组编号知识60问
- g723源码详细分析-14-感知加权滤波器补充
- linux系统故障修复