随笔分类 -  ACM总结

数位DP专题
摘要:这周开始刷数位DP,在网上找到一份神级数位DP模板,做起题目来爽歪歪。http://www.cnblogs.com/jffifa/archive/2012/08/17/2644847.html1 int dfs(int i, int s, bool e) {2 if (i==-1) retu... 阅读全文

posted @ 2014-08-04 22:55 仗剑奔走天涯 阅读(381) 评论(0) 推荐(0)

RMQ总结
摘要:以下摘自刘汝佳大神的《训练指南》。范围最小值问题(Range Minimum/Maximum Query,RMQ)。给出一个n个元素的数组A1,A2……An,设计一个数据结构,支持查询操作Query(L,R):计算min{A(L),A(L+1),……,A(R)} Sparse-Table算法能够很好的解决这个问题,它的预处理时间是O(nlogn),但是查询只需要O(1),而且常数很小。最重要的... 阅读全文

posted @ 2013-05-05 16:36 仗剑奔走天涯 阅读(290) 评论(0) 推荐(0)

树状数组总结
摘要:最近做了近20道树状数组题目,发现有点痴迷于它了,这个数据结构真是太优美了,小巧又强悍,编程复杂度极其低,大爱呀!先丢上模板lowbit操作:int lowbit(int x){ return x&-x;}add操作:void add(int x,int d){ while(x0) { ret+=c[x]; x-=lowbit(x); } return ret;}运用树状数组我们可以解决一下几类问题:一、单点修改,区间查询这是树状数组最基本的操作一维:POJ3928 - Ping pongPOJ - Ultra-QuickSort(求逆... 阅读全文

posted @ 2013-05-02 18:23 仗剑奔走天涯 阅读(511) 评论(0) 推荐(0)

导航