随笔分类 -  acm-树状数组

hdu 1556(树状数组)
摘要:题意:易知。。。思路:要求对树状数组的理解。代码实现:#include<iostream>#include<cmath>using namespace std;int n,a[100001];int lowbit(int x){ return x&(-x);}void build(int x,int y)//建树{ while(x<=n) { a[x]+=y; x+=lowbit(x); }}int sum(int x)//求和{ int s=0; while(x>0) { s=s+a[x]; x... 阅读全文

posted @ 2013-03-09 15:34 后端bug开发工程师 阅读(746) 评论(0) 推荐(0)

hdu 4339 Query 一道挺好的树状数组题(树状数组+二分思想)
摘要:题意:首先给了两个字符串,然后有两种类型的操作,第一种:1 a i c 你应该把第i个字符串的第a个字符变成c;第二种:2 i 就是问你从第i个字符开始两个字符串连续的最长的相等长度。思路:利用树状数组更新和求和,对于第二种操作就是利用二分求得的连续最长的长度。代码实现:#include<iostream>#include<cstring>using namespace std;char str1[1000001],str2[1000001];int a[1000001],len1,len2;int lowbit(int x){ return x&(-x);}v 阅读全文

posted @ 2013-01-19 22:29 后端bug开发工程师 阅读(364) 评论(0) 推荐(0)

导航