假期跟家人出去旅游了两天,没能做题,剩下的几天,除了出门的时间大部分时间在做题目和写作业,这个假期基前面写国庆专辑,第一道题目写的是到树状数组的题目,又复习了一下树状数组,这次的题目用到了离线操作,暑假的时候对离线操作的题目接触比较少,这次好好研究了下这个题目,这个题目问的是求区间内不同元素的个数,用到很巧妙的操作,离线操作储存输入的数据,将数据第一次出现的位置放入树状数组,以后的位置都储存,储存测试区间,离散化处理,先对区间进行排序,区间查询,先遍历重复出现的数组的位置,遍历到查询区间的左端点为止,查询区间内被标记的位置的个数,还原查询区间的顺序输出。开始想到这钟方法的时候在纠结一个遍历重复的数据时会不会在一个查询区间出现多个重复的数据,当时脑袋有点迷糊,钻了牛角尖,想不通这个问题,把题目放下,出去走了走,做了点别的事,再回来想突然就想通了,查询区间内的点储存着下一个重复点的位置,要越过左端点才能遍历到,所以不会出现这种情况,经过这个体会,总结以后遇到题目想不通的时候可以转一下注意力,先放一下在来看的时候脑子会更清醒。
其他几道题目都是线段树的问题,都是基本应用的变形,还有不少题目,有延长1个周的时间,现在对线段树的题目做起来还算顺手能提高一下效率了,剩下的这几天争取没天出一道两道,可以在规定时间里做完题目。