摘要: 题目:https://www.luogu.org/problemnew/show/P2585 首先,三色其实记录两种状态:是绿色,不是绿色 即可,因为红蓝可以随意取反; 一开始因为懒得还原出树,所以写了个错误贪心-_- #include<iostream> #include<cstdio> #inc 阅读全文
posted @ 2018-09-19 21:58 Zinn 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 题目:https://www.luogu.org/problemnew/show/P1131 记录 x 子树内同步的时间 f[x],同步所需代价 g[x]; 直接转移即可,让该儿子子树与其它儿子同步,只需要在自己到儿子的那一条边上改动。 代码如下: 阅读全文
posted @ 2018-09-19 20:35 Zinn 阅读(116) 评论(0) 推荐(0) 编辑
摘要: 题目:http://codeforces.com/contest/908/problem/D 首先,设 f[i][j] 表示有 i 个 a,j 个 ab 组合的期望,A = pa / (pa + pb) , B = pb / (pa + pb) 那么 f[i][j] = A * f[i+1][j] 阅读全文
posted @ 2018-09-19 20:02 Zinn 阅读(168) 评论(0) 推荐(0) 编辑
摘要: 题目:http://noi.ac/problem/31 好题啊! 题意很明白,对于有关最小生成树(MST)的题,一般是要模拟 Kruskal 过程了; 模拟 Kruskal,也就是把给出的 n-1 条边一条一条加进去,那么就要枚举每次连接了哪两个连通块(点集); 于是需要记录连通块情况,这样加一条边 阅读全文
posted @ 2018-09-19 16:56 Zinn 阅读(287) 评论(0) 推荐(0) 编辑
摘要: 题目:https://www.luogu.org/problemnew/show/UVA10559 区间DP,有点难想; 为了方便,先把原来就是连续一段相同颜色的点看做一个点,记一下长度; f[i][j][k] 表示右边有 k 个和 j 颜色相同的点时(其它都已经各自被消掉),消除 i ~ j 区间 阅读全文
posted @ 2018-09-19 11:45 Zinn 阅读(234) 评论(0) 推荐(0) 编辑
摘要: 题目:http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1522 区间DP,从大往小加; 新加入一种数有3种加法:全加左边,全加右边,一左一右; 然后判断一下加完是否满足那些条件即可; 但判断这个条件还挺复杂,一不小心就写丑了 阅读全文
posted @ 2018-09-19 09:54 Zinn 阅读(250) 评论(0) 推荐(0) 编辑