
树状数组
文章平均质量分 63
丶阿明
Hello World!
展开
-
POJ 2155 Matrix
题意:给你一个N*N的矩阵,一开始矩阵内的数字全为0,再给你一个矩形坐标,左上角为(x1,y1),右下角为(x2,y2),要你改变这个矩形中的数字,如果是1的话,改为0,如果是0改为1,查询时给你矩阵中的一个点的坐标(x,y),要你输出这个点的值。分析:改变矩形中的点,可以看做是4次变化:分别以(x1,y1),(x2+1,y1),(x1,y2+1),(x2+1,y2+1)为左上角,(n,n)为原创 2015-07-10 22:30:53 · 485 阅读 · 0 评论 -
POJ 2352 Stars
分析:给你n颗星星,让你输入星星等级分别为0~n-1的星星数,一颗星星等级就是这个星星左下角的星星数,不包含这颗星星本身,包含在同一水平线或同一竖直线上的点。因为星星的y是递增的,y相同则x递增,所以一颗星星的等级就是除这颗星星外的其他星星的横坐标小于等于这颗星星的星星数。可以用树状数组很快的解出来。# include # include int c[32005],level[3200原创 2015-07-13 20:07:04 · 481 阅读 · 0 评论 -
POJ 2481 Cows
分析:每一头牛都一片领域[s,e]如果一头牛的[s,e]包含另一头牛的[s,e],那么就比另一头牛强,于是我们先把牛排序,e大的排在前,相等的话就s小的排在前,这样排在前面的牛一定不会比排在后面的牛弱,如果两头牛的s和e都相等的话,那么比他们强壮的牛的数量也相等,不然的话求比一头牛强的数量只要求出s# include # include # include using namespa原创 2015-07-13 20:23:28 · 408 阅读 · 0 评论