随笔分类 - 动态规划 -- 树形dp
摘要:Contest Info 传送门 Solved A B C D E F G H I J K L M 6 / 13 O - O - - - Ø Ø O - - Ø - O 在比赛中通过 Ø 赛后通过 ! 尝试了但是失败了 - 没有尝试 Solutions A. Tetrahedron 签到。 C. B
阅读全文
摘要:Contest Info 传送门 |Solved|A|B|C|D|E|F|G|H|I|J|K|L| |:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:| |7 / 12|O|-|-|-|Ø|O|Ø|-|Ø|O|-|Ø| O 在比赛中通过 Ø 赛后
阅读全文
摘要:Contest Info 传送门 Solved A B C D E F G H I J K L M 8 / 13 O O - Ø - O - O - - Ø Ø Ø O 在比赛中通过 Ø 赛后通过 ! 尝试了但是失败了 - 没有尝试 Solutions A - Palindrome 可以将问题转化为
阅读全文
摘要:[TOC] "传送门" |Solved|A|B|C|D|E|F|G|H|I| |: :|: :|: :|: :|: :|: :|: :|: :|: :|: :| |8 / 9|O|Ø|Ø|Ø|Ø|O| |Ø|O| O 在比赛中通过 Ø 赛后通过 ! 尝试了但是失败了 \ 没有尝试 A. Amateu
阅读全文
摘要:"传送门" 题意: 求以每个点为根节点的树的拓扑序计数。 思路: 是一个挺经典的问题。 我们考虑自下而上的树形$dp$:假设我们当前点在$u$,我们已经求出来了$dp[v],v\in sons_u$。 现在要求$u$的方案数,我们考虑在$u$放上$1$,然后剩下$sz[u] 1$个数生成一个排列依次
阅读全文
摘要:"bzoj" "cf" 题意: 给出$n$个互异正整数序列$c_{1,2,...,n}$。 现在要求构造带点权二叉树,每个结点的点权都属于集合$c$。 现在给出$m$,要求权值和为$s,1\leq s\leq m$的不同二叉树个数。 思路: 考虑暴力$dp$,我们直接跑树形$dp:dp_{i}$表示
阅读全文
摘要:"传送门" A. Exercising Walk 显然横纵坐标我们可以分开考虑。 假设只考虑横坐标,若$x_2\not ={x_1}$,那么向左/向右走可以互相抵消,然后只能往一个方向走;若$x_2=x_1$,那么就不能向左/向右走。 纵坐标同理。 只需要check一下最终位置是否在矩形内即可。 赛
阅读全文
摘要:"PTA" "牛客" A. 黑色气球 数据保证答案唯一,则随便搞搞即可。 Code cpp const int mod=1e9+7; const int maxn=5005; bool vis[maxn]; vector e[maxn]; int n; inline void view_all(ve
阅读全文
摘要:"传送门" 题意: 给出一颗$n$个结点的树,对于每个结点输出其答案,每个结点的答案为$ans_x=\sum_{i=1}^ndis(x,i)^k$。 思路: 我们对于每个结点将其答案展开: $$ \begin{aligned} ans_x=&\sum_{i=0}^{n}\sum_{j=0}^k{di
阅读全文
摘要:"传送门" C K th Substring 题意: 给出一个字符串,求其第$k$小子串,$k\leq 5$。 思路: 因为$k$很小,所以答案长度不可能超过$k$。所以直接将所有的长度不超过$k$的串拿出来排序就行。 Code cpp include define MP make_pair def
阅读全文
摘要:"传送门" A. Prime Subtraction 判断一下是否相差为$1$即可。 B. Kill 'Em All 随便搞搞。 C. Standard Free2play 题意: 现在有一个高度为$h$的悬崖,每一层有平台,但可能是隐藏状态。 高度为$h$的那层平台一定是在外面的,假设当前高度为$
阅读全文
摘要:"传送门" C Candles 双指针维护一个区间搞一下就行。 Code cpp include using namespace std; typedef long long ll; const int N = 1e5 + 5; int a[N], b[N]; int n; int c[N]; in
阅读全文
摘要:"传送门" A. Who is better? 扩展中国剩余定理+斐波那契博弈,没啥好说的,关于斐波那契博弈,详见: "传送门" Code cpp include typedef long long ll; typedef unsigned long long ull; typedef double
阅读全文
摘要:"传送门" A.Rikka with Quicksort 前来填坑= = 题解不想再码一遍了, "戳这看题解" )。 思路挺清晰的,推式子需要用到高中数列的技巧,还是有点巧妙。之后分段打表来搞就行。 注意一点就是最终推出来的式子中: $$ f(n)=\frac{n 1}{(n + 1)(n + 2)
阅读全文
摘要:传送门 D.Acesrc and Hunting 将最上面两排作为中转站; 自底向下往上,之后又从上往下; 第三排开始每步长度为$2$或者$\sqrt{2}\(,上面两排步长可能为\)\sqrt{5}$。 E.Acesrc and String Theory 题意: 询问$k$循环的子串个数,$1\
阅读全文
摘要:2019 Multi University Training Contest 3 "题目链接" Blow up the city 首先考虑建立一个虚根,与所有反图中入度为$0$的点连边形成一颗树,然后考虑建出其支配树。对于$DAG$来说比较简单,反图中按着拓扑序来搞,这样就可以保证处理一个点时,其父
阅读全文
摘要:P2495 [SDOI2011]消耗战 "题目链接" 题解: 虚树$dp$入门题吧。虚树的核心思想其实就是每次只保留关键点,因为关键点的dfs序的相对大小顺序和原来的树中结点dfs序的相对大小顺序都是一样的,所以可以就求出dfs序并且利用它来构造。最后的图中只有关键点以及某些关键点对的lca。 具体
阅读全文
摘要:Educational Codeforces Round 64 (Rated for Div. 2)题解 "题目链接" A. Inscribed Figures 水题,但是坑了很多人。需要注意以下就是正方形、圆以及三角形的情况,它们在上面的顶点是重合的。 其余的参照样例判断一下就好了了。~~具体证明
阅读全文
摘要:Educational Codeforces Round 58 (Rated for Div. 2) 题目总链接:https://codeforces.com/contest/1101 A. Minimum Integer 题意: 多组数据,给你三个数l,r,d,要求在区间[l,r]之外找一个最小的
阅读全文
摘要:Codeforces Round #527 (Div. 3) 题解 题目总链接:https://codeforces.com/contest/1092 A. Uniform String 题意: 输入n,k,n表示字符串的长度,k表示从1-k的小写字符(1即是a),现在要求最大化最少字符的数量。 题
阅读全文