03 2015 档案

LCA 求 树中两个点的距离
摘要:PS:在树中:dis(u,v)=dis(root,v)+dis(root,u)-2*dis(root,lca(u,v)); 这个性质可以写很多题。vectormp[N];int dp[N][LN];int dep[N];void dfs(int u,int fa,int t) //dfs(roo... 阅读全文

posted @ 2015-03-26 19:21 forgot93 阅读(581) 评论(0) 推荐(0)

Baby Step Giant Step model
摘要:******************************************** */#include #include #include #include #include #include #include #include #include #include #include #inc... 阅读全文

posted @ 2015-03-25 22:15 forgot93 阅读(175) 评论(0) 推荐(0)

POJ 1330 Nearest Common Ancestors (LCA,dfs+ST在线算法)
摘要:这题只是询问 一组u,v的LCA但是要判断root 是哪个。在线做法: 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #define N 1111110 #defi... 阅读全文

posted @ 2015-03-25 21:12 forgot93 阅读(156) 评论(0) 推荐(0)

codechef FUN WITH TREES
摘要:题目大意: 给一棵树root=1的树: 给一些操作:u v 的路径所有节点的node + val; 最后m个询问:u 节点(包括u) sum%mod 是多少。 LCA + RMQ;我们每次mark ,u , v, +=val;fa=lca[u,v])-=val;fa[fa]-=val你会... 阅读全文

posted @ 2015-03-24 22:07 forgot93 阅读(109) 评论(0) 推荐(0)

几道hash题
摘要:1: UVa 10887 - Concatenation of Languages map 可以做 ,但是输入实在恶心,有空串之类的HASH模板: int Hash(char *s){ int seed=131,sum=0; while (*s) sum=sum*seed+(*s++); retu... 阅读全文

posted @ 2015-03-16 20:43 forgot93 阅读(173) 评论(0) 推荐(0)

快速幂下的快速乘法
摘要:思路类似快速米,为了防止数相乘超出long long的范围。复杂度再加一个log(n);很实用的东西:ll mut(ll a,ll b){ ll res=0; while (b) { if (b&1) res=(res+a)%p; a=(a+a)%p; b>>=1; } return res;}ll... 阅读全文

posted @ 2015-03-15 23:01 forgot93 阅读(146) 评论(0) 推荐(0)

HNOI2002]营业额统计 Splay tree
摘要:保存模板: 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 8 typedef long long ll; 9 using namespace std; 10 #define N 100... 阅读全文

posted @ 2015-03-12 22:23 forgot93 阅读(137) 评论(0) 推荐(0)

导航