自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 收藏
  • 关注

原创 CodeForces 715C Digit Tree (树的分治)

分析:求所有满足情况的链的个数,这个时候很容易想到树的分治,每次求经过rt的所有满足条件的链的个数。由于从rt开始的链可以进行合并。所有直接暴力所有子树就可以了。复杂度就是o(nlogn)o(nlogn)。代码:#include <bits/stdc++.h>#define LL long long#define FOR(i,x,y) for(int i = x;i < y;i ++)#def

2016-09-22 23:48:40 956

原创 HDU 5895 Mathematician QSC(欧拉定理推广)

分析:附上链接:icpccamp 当 x>φ(m)x>φ(m) 时,ax≡aφ(m)+xmodφ(m)(modφ(m))a^{x}≡a^{φ(m)+x mod φ(m)}(mod φ(m)) 总是对的。不需要互质的条件。 然后高一个矩阵快速幂就搞定了(是不是矩阵快速幂可以搞定所有序列的通项?)代码:#include <bits/stdc++.h>using namespace std;typed

2016-09-19 00:52:34 440

原创 CSU 1806 Toll (自适应Simpson积分 )

题意:就是一个积分+最短路分析:学到的新知识:自适应SimpsonSimpson积分 ∫baf(x)dx≈F(a,b)=(b−a)6[f(a)+4f(a+b2)+f(b)]{\int_a^bf(x)dx}\approx{F(a,b)={(b-a)\over{6}}[f(a)+4f({a+b\over{2}})+f(b)]} 如果F(a,a+b2)+F(a+b2,b)F(a,{a+b\over

2016-09-07 14:09:50 421

原创 CSU 1810 Reverse

题意:把[i,j][i,j]这个区间的数翻转一下和剩下的n−j+i−1n-j+i-1个数形成一个新的大数,求所有翻转以后的数的和。分析:翻转以后的数由原来的数和翻转部分的数组成。暴力枚举ii开始的所有新的数的和。 l[i]l[i]表示前ii个数形成的数的值。 r[i]r[i]表示后面[j,n][j,n]形成的数的值。 那么 ans[i]=∑j=in(r[1]−r[i−1])+r[j+1]+l

2016-09-07 13:03:20 552

原创 CSU 1811 Tree Intersection

题意:一棵树,每个节点有一种颜色,现在删去一条边,求这个树分成两部分,这两部分的共有颜色个数。分析:枚举每一棵子树所有存在的颜色的节点个数,看看有没有超过这种颜色再整个树中的个数,就是答案。 就是一个子树的合并操作,合并并不需要每一个子树都建立一个节点,只需要找出不同颜色最多的那个子树,在这个子树上进行合并就可以了。这个样子每一次最多暴力了u.size()/2u.size()/2,那么总的复杂度就

2016-09-07 12:42:34 731

原创 CSU 1808 地铁

题意:给nn个点,mm条边,每条边都有一个idid。不同边之间进行切换时,需要加上这个idid差值。求最终11到nn之间的最短路。分析:拆点最短路,由于到达每个点的状态不光与点uu有关,也和到达uu的边的idid有关。因此想要对应求最短路,只能把一个点拆成多个点,每个点对应一种它连接的边的idid。重新建图,然后跑一边最短路。一个点拆成多个点内部连线的时候,只需要把所有idid排序,然后连线就可以了

2016-09-06 09:24:07 568

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除