自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

romiqi

千古文人侠客梦,肯将碧血写丹青

  • 博客(12)
  • 收藏
  • 关注

原创 [BZOJ2870][边分治]最长道路tree

BZOJ2870点分治处理不了最小值边分治,和点分治类似,就是选择一条边,使其两端的子树最大的最小然后一样容易被卡(菊花图)所以把树建成一棵二叉树,如果一个点的儿子大于2个就建两个新点管理它的儿子,如果还多于两个就继续建(和线段树一样)这样保证了复杂度那么考虑这道题:最小值用边分治显然就很好处理了,然后我们把新建的边的权值赋为0,原边的权值为1,那么两点之间的点数就是边权和+1那么我们...

2019-04-17 17:01:05 308

原创 SCOI2019酱油记

Day -1:教练放我们回去休息一个晚上,不用上晚自习了,正好复习笔试Day 0:早上7:30到了学校,等到8:00出发,到酒店之后把东西放下就去吃饭了。回来在酒店复习了一下笔试,感觉要凉下午2:00到了神大,然后进笔试考场,周围坐一堆大佬(其实我是这个教室最后一个)发试卷一看,这不是sb玩意吗,好像全考场都在10min内做完了?反正我也差不多30min可以交卷了,怎么我们考室的大佬们...

2019-04-14 22:02:46 250

原创 [BZOJ4818][矩阵快速幂优化DP]SDOI2017:序列计数

BZOJ4818状态比较好想:f[i][j]f[i][j]f[i][j]表示第iii个数,它们的和%p\%p%p 为 jjj的方案数转移方程f[i][(j+k)%p]=∑f[i−1][j]∗s[k]f[i][(j+k)\%p]=\sum{f[i-1][j]*s[k]}f[i][(j+k)%p]=∑f[i−1][j]∗s[k],s[k]表示mod p余k的数的个数用矩阵快速幂优化转移即可关于...

2019-04-06 15:24:22 121

原创 [BZOJ4872][概率DP]SHOI2017:分手是祝愿

BZOJ4872首先,操作每个灯泡而改变的灯泡集合都不相同,这也决定了每个灯泡都不能被代替,所以操作一个灯泡只可能使步数+1或者-1两种情况考虑不随机的时候应该走几步,显然小的不可能影响大的,所以就从后往前扫一遍,遇到亮的就点灭,然后把约数取反,这一步O(nn)O(n\sqrt n)O(nn​),实际上就是复杂度上界然后考虑dp[i]dp[i]dp[i]表示第iii步走到第i−1i-1i−1...

2019-04-05 09:33:25 100

原创 [LOJ2324][树形DP]清华集训2017:小 Y 和二叉树

LOJ2324题外话:为啥这个小和Y中间有个空格,每次在前缀查询的网站都搜不出来首先,一个度数=3的点不可能成为叶子节点最左边的叶子节点就是这棵树的中序遍历的第一位,所以我们可以DP确定这个叶子节点是多少,设f[i]f[i]f[i]表示iii点的子树中中序遍历的第一位最小可能是多少然后确定了最终中序遍历的第一位之后,可以通过这个点向上扩展具体的,如果这个点只有一个子树,判断一下这个点和子...

2019-04-05 09:13:39 243

原创 [BZOJ4033][树形DP]HAOI2015:树上染色

BZOJ4033这道题最关键的思想在于,我们以往树形DP的时候,常常设f[i][j]f[i][j]f[i][j]表示点iii的子树的dpdpdp值,而这道题对于一个点的子树,它的贡献是子树内所有黑点到子树的根节点的距离之和乘上其兄弟的子树的黑点个数,白点同理,因为只能染k个,所以必须记录染了几个黑点,这样的状态是O(n3)O(n^3)O(n3)的所以我们需要换一种统计贡献的方法,既然点不好统计...

2019-04-05 09:04:22 175

原创 [BZOJ1017][树形DP][背包DP]JSOI2008:魔兽地图DotR

BZOJ1017每个装备可以直接贡献,也可以用于合成设f[i][j][k]f[i][j][k]f[i][j][k]表示第iii件装备,jjj件用于合成,花费kkk元可以获得的最大力量值首先处理出每个高级物品能够购买的上限lim[i]lim[i]lim[i]和价格mon[i]mon[i]mon[i]枚举每个物品购买的数量lllfff数组不好直接转移,设g[i][j]g[i][j]g[i][...

2019-04-05 08:54:21 159

原创 [LOJ2330][树形DP]清华集训2017:榕树之心

LOJ2330分析:假设现在心在位置xxx,则心可以通过xxx的不同子树的生长抵消移动,仍然停留在xxx位置当然也有无法停留在xxx位置的情况:第一种是siz[x]−1siz[x]-1siz[x]−1为奇数,显然多出一次生长第二种是sizsizsiz最大的子树的sizsizsiz过于大(大于1/2),所以一定会把心拉到里面去那么我们就可以树形DP判断根节点是否可行了,设w[i]w[i]w...

2019-04-04 21:57:09 179

原创 [BZOJ4557][树形DP]JLOI2016:侦察守卫

BZOJ4557dp,因为d很小,所以设f[i][j]f[i][j]f[i][j]为点iii,子树中深度为jjj的点都不控制的代价g[i][j]g[i][j]g[i][j]为点iii,子树中深度为jjj的点都被控制,且向上还有jjj个被控制的代价转移比较简单,注意fff和ggg可以从自己转移过来Code:#include<bits/stdc++.h>using namesp...

2019-04-02 21:34:57 134

原创 [BZOJ4871][树形DP]SHOI2017:摧毁“树状图”

BZOJ4871题外话:这是魔禁里的那个树状图么题内话:建议大家找个有图的题解很容易看出来是树形DP,设计状态:f[x][0]f[x][0]f[x][0]:穿过x向上的半条链f[x][1]f[x][1]f[x][1]:不穿过x且完全在子树内的一条链f[x][2]f[x][2]f[x][2]:穿过x且完全在子树内的一条链f[x][3]f[x][3]f[x][3]:穿过x向上的半条链以及...

2019-04-02 21:30:45 227

原创 [BZOJ4011][树形DP]HNOI2015:落忆枫音

BZOJ4011题意:给个DAG和一条额外的边,求以1为根的有向生成树个数分析:如果没有额外的边,那么考虑乘法原理得到答案就是∏i=2nin[i]\prod_{i=2}^n{in[i]}∏i=2n​in[i]加上额外的边后,可能生成环(如果没有就一样的)多出来的选择就是环上的点都选了环上的父亲那么我们设f[x]f[x]f[x]是xxx到sss(给出的额外边)上产生的贡献,转移就是f[x...

2019-04-02 21:23:24 112

原创 [BZOJ4828][DP]HNOI2017:大佬(cyk)

BZOJ4828观察发现,我们加血和攻击是两个互不影响的操作,只要保证我们时刻存活就可以进行攻击,而攻击又有一些约束条件,方便起见,我们设置三个子任务subtasksubtasksubtasksubtask1:subtask1:subtask1:处理出,保证自己存活的情况下,可以有多少天自由行动(不回血)subtask2:subtask2:subtask2:在完成subtask1subta...

2019-04-01 21:33:28 138 3

空空如也

空空如也

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

TA关注的人

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