bzoj 1878 HH的项链 (树状数组+离线)
题目大意:给你一个序列,求某区间出现不同的数的个数。
貌似离线树状数组是最好的解法
先把所有询问挂在它们询问的右端点上
然后从头到尾遍历这个序列,记录这个位置的值上一次出现的位置
那么,当遍历到第i位时,如果a[i]在之前出现过,就在它上一次出现的位置-1
这个操作的意义是,第i位已经有a[i]了,那么上一次出现a[i]的位置已经失去意义
接着在这个位置+1,更新last[a[i]]。...
原创
2018-09-01 10:42:21 ·
139 阅读 ·
0 评论