摘要: 文哥突然问我这两题有什么不同。我真的不知道怎么说。POJ 2155 是更新的数据的一段,但是求的是某个点的数据。POJ 1195 是更新的数据的一点,但是求的是数的点。可以想象为一维的树状数组,其实POJ 2155的话,就好比是在数组 a 上[n...m]的值都加上K的更新。而POJ 1195的话就好像是在数组 a 上某个点的值遭到改变,然后求区间[n...m]的值。POJ 1195 像是 NYOJ 116 士兵杀敌(二)POJ 2155 像是 NYOJ 123 士兵杀敌(四) 阅读全文
posted @ 2012-09-22 21:33 YORU 阅读(166) 评论(0) 推荐(0)
摘要: http://poj.org/problem?id=2155二维的树状数组,这题要逆向。即最开始的点的是树状数组的终点。。。View Code 1 #include <iostream> 2 #include <string> 3 using namespace std; 4 const int maxn = 1005; 5 int ans[maxn][maxn],n; 6 int lowbit(int x) 7 { 8 return x & (-x); 9 }10 11 void mod(int x,int y,int c)12 {13 int i;14 wh 阅读全文
posted @ 2012-09-22 21:02 YORU 阅读(192) 评论(0) 推荐(0)
摘要: http://acm.hdu.edu.cn/showproblem.php?pid=2660做下这道二维费用的问题。。。。。结果自己把两个维数代表的东西都搞反了,最重要的是TM的样例过了。。。然后自己就泪奔。。。。最后看别人题解,和自己是一样的啊。。。然后就仔细看了下代码,过了。内循环其实是可以互换循环的位置的。不知道为什么AC 1 #include <iostream> 2 using namespace std; 3 const int weight_maxn = 1005; 4 const int number_maxn = 25; 5 int ans[weight_maxn 阅读全文
posted @ 2012-09-22 19:48 YORU 阅读(306) 评论(0) 推荐(0)