摘要: https://loj.ac/problem/10155 因为一个i对应一个约数和,所以i向i的约数和连线会构成一棵树,i是i的约数和(a[i])的儿子 计算树的直径、最长链 设d1[i]表示i到 以i为根的子树中 的 叶子结点的最长距离,d2[i]表示次长,u[i]表示直径 d1[i]=max(d 阅读全文
posted @ 2020-08-26 21:28 zlq, 阅读(142) 评论(0) 推荐(0) 编辑
摘要: https://www.luogu.com.cn/problem/P2014 设dp[i][j]表示以i为根的子树中(必须选i),选j门课获得的最多学分 先递归求出i的所有孩子的dp值 然后背包 枚举儿子(物品)枚举j(容量)再枚举儿子子树中选几门(决策)(注意倒序) #include<bits/s 阅读全文
posted @ 2020-08-26 18:35 zlq, 阅读(196) 评论(0) 推荐(0) 编辑
摘要: https://www.luogu.com.cn/problem/P2015 设f[i][j]表示以i为根的子树中保留j个枝最多剩多少苹果 #include<bits/stdc++.h> using namespace std; int a[110][110],dp[110][110]; int n 阅读全文
posted @ 2020-08-26 17:20 zlq, 阅读(139) 评论(0) 推荐(0) 编辑
摘要: https://www.luogu.com.cn/problem/P1052 设f[i]表示到达i位置最少踩到石子个数 f[i]从f[i-t]到f[i-s]转移 但是l太大要压缩路径 1.根据小凯的疑惑中的结论 方程px+(p+1)y=z,当z>=p(p+1)-p-(p+1)时一定有解 在本题中步数 阅读全文
posted @ 2020-08-26 09:33 zlq, 阅读(135) 评论(0) 推荐(0) 编辑