首页
比赛
题库
课程
竞赛讨论区
登录
/
注册
去牛客
首页
>
选课
3条解析
开通博客写题解
hnust_yangyanjun
发表于 2020-08-22 12:06:52
题意:你有n门课程,你可以选择m门课选修,有的课程有先修课,每一门课程都有学分,求你可获得的最大学分为多少? 思路:树状dp没先修课的与0节点连接,有先修课的与先修课连接,这样就是0节点为根的一棵树了。dp[i][j]表示以i节点为根的子树且选择了i时共选择j门课程的最大学分,这样就满足了先修课的条
展开全文
shyyhs
发表于 2021-03-10 13:23:59
前言 清楚姐姐树形题单的最后一题了... 思路 考虑先当前节点必须把当前节点前面连接到根的节点全部选了..那么我们不妨令为选了节点且选取数量为的一个最大价值.那么转移似乎挺简单的. 代码 #include <bits/stdc++.h> using namespace std; cons
展开全文
DearFrozencodechenback
发表于 2019-08-16 15:16:56
树形dp模板题首先建一个虚拟节点0,让原本的森林变成一颗树。然后我们设dp[i][j]表示以i为根的子树中,选j门课的最大价值。转移时我们枚举当前以x为根的子树选课的数量(t),以及分配给x的子节点y多少节课(j)。不难写出方程:dp[x][t]=max(dp[x][t],dp[x][t-j]+dp
展开全文
查看本题
查看本题讨论
相关比赛
1044-0x54 动态规划-树形DP
进入比赛
25022-2021秋季算法入门班第八章习题:动态规划2
进入比赛
25616-自我训练
进入比赛
27023-寒假冲刺
进入比赛
28260-牛客竞赛动态规划专题班树型dp练习
进入比赛
等你来战
查看全部
2025年广东工业大学程序设计竞赛月赛(同步赛)
报名截止时间:2025-10-19 18:30
牛客周赛 Round 114
报名截止时间:2025-10-19 21:00
牛客2025秋季算法编程训练联赛2-基础组
报名截止时间:2025-10-22 21:00
牛客2025秋季算法编程训练联赛2-提升组
报名截止时间:2025-10-22 21:30
牛客2025年1024程序员节娱乐赛
报名截止时间:2025-10-24 21:00
牛客周赛 Round 115
报名截止时间:2025-10-26 21:00
九坤极限 Code 双赛季 · Accepted编程网络预赛
报名截止时间:2025-10-27 18:00
牛客练习赛145
报名截止时间:2025-10-31 21:30
扫描二维码,关注牛客
意见反馈
下载牛客APP,随时随地刷题