今天开始做专题三,学习了一个周的树状数组,终于开始自己思考题目,开始几个水题还可以,先写了几个树状数组的基本应用的题目,基本应用的题目都是简单的单点更新,区间求和,套模板就可以,没什么难度,熟悉了一下树状数组的模板。再之后写了二维树状数组的题目,之前学习的时候看了大神们对二维数组题目的讲解,从一维演变到二维,思路的转换,今天做的这个二维数组的题目和一道气球染色的题目相似,气球染色的题目是一维的,这个二维的可以用一维的思路演变到二维,很巧妙,顺便熟悉了一下二维数组的模板,做完二维的又挑了一个三维的树状数组,第一次碰到三维,学习的时候也没遇到三维的,但这个三维题目和刚做的二维题型一样,就是将二维扩展为了三维,继续用二维树状数组的思路去写,但测试总是有问题,找了好久,最后发现是add和sum里面二维,三维坐标定义位置的问题,长知识了又,定义在外面会出问题,这么个小问题,纠结了好久。
剩下写的题目基本都是求逆序数,顺序数的问题,有道题目看了好久,没想出来思路,怎么用树状数组困扰了我好久,暂时放下去做了其他题目,下午再看的时候突然想到区间更新,单点查询的做法,当时看的这种题型比较少,所以没能一开始想到思路。还剩两道题目今天一直tle 实在找不到问题,今晚先放着吧,指不定做后面的遇到问题,能联想到。做后面的题目再积累点处理问题的经验。
总结今天做题的经验:遇到问题看不出怎么用树状数组可以先从大的方面想,标记数组,单点更新;区间更新,单点查询;单点更新,删除元素等。处理问题方面,注意各个细节,实在找不出问题的时候,注意变量定义的位置。
新一周开始了,也是暑假集训最后一周了,要更好的努力。