- 博客(4)
- 收藏
- 关注
原创 hdu-5490
1.横向和纵向可以分开来考虑 2.对于等差数列来说,直接跑一个10^4的递推求和 , g(n,m)= a1*C(m-1,m+n-2) + a2*C(m-1,m+n-3) +a3*C(m-1,m+n-4) + ..... + an*C(m-1,m-1) 3.对于等比数列来说 S(n,m) = ( q * S(n-1,m) - C(n,m+n-1) ) / ( q - 1 ) , S(0,m)
2015-09-28 14:19:19
254
原创 hdu-5405
这是一道大树链剖分的题。 1.我们可以发现:a为:所有点权之和的平方,bi为:消去链上的点后,所形成的某棵子树的点权之和,那么,s = a-所有bi的平方的和,s即为我们要查询的值 2.所以我用树状数组维护了两个域,一个是当前节点的子节点的bi的平方的和(不包括在当前链上的子节点),另一个维护的的是以i节点的权值,当然查询out[i]到in[i]-1的范围内的和,就可以求出以i为根节点
2015-09-17 10:14:43
521
原创 hdu-5029
这是一道树链剖分的题目 做法:1.对树进行剖分,在更新的区间段上的左端点,打(谷物种类,1)标记,表示谷物加入该区间段的节点,在右端点加1的位置,打(谷物种类,-1)标记,表示减去前面加上的谷物,消去对后面区间段的影响。 2.以谷物种类为下标,维护区间段内,谷物数量的最大值,还有,当前最大值的谷物种类。从左向右加入标记,即可求出答案。 #include #include #include #
2015-09-12 09:25:21
238
原创 hdu-5385
贪心的做: 1.把与1相连的节点加入集合 2.clock递增可以保证中间的点到1节点的距离最大 3.分别从2和n在集合中开始找,在把与找到的点相连且不在集合中的点加入集合中
2015-09-01 09:12:06
272
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人