树状数组的神奇操作
# 统计区间不同颜色数 [SDOI2009] HH 的项链 # 题意 给出一个颜色序列,每次询问区间[L,R][L, R][L,R] 的不同颜色数,数据范围都 1e6。 # 思路 离线处理,按右端点排序。有两个位置颜色相同时,记录靠右的地方。 从左到右扫一遍颜色数组。 当前位置的颜色没出现过:树状数组这个位置 + 1 当前位置的颜色出现过:上一个位置 -1, 这个位置 + 1 若当前位置恰好是某一个查询的右端点,统计答案ans[i]=query(r)−query(l−1)ans[i] = query(r) - query(l - 1)ans[i]=query(r)−query(l−1)...
more...