当前位置: 首页 > news >正文

滁州项目建设公示在哪个网站wordpress前台提交图片

滁州项目建设公示在哪个网站,wordpress前台提交图片,wordpress过期文章,看广告赚钱涉及知识点 深度优化(DFS) 记忆化 题目 节点 0 处现有一棵由 n 个节点组成的无向树#xff0c;节点编号从 0 到 n - 1 。给你一个长度为 n - 1 的二维 整数 数组 edges #xff0c;其中 edges[i] [ai, bi] 表示在树上的节点 ai 和 bi 之间存在一条边。另给你一个下标从 0…涉及知识点 深度优化(DFS) 记忆化 题目 节点 0 处现有一棵由 n 个节点组成的无向树节点编号从 0 到 n - 1 。给你一个长度为 n - 1 的二维 整数 数组 edges 其中 edges[i] [ai, bi] 表示在树上的节点 ai 和 bi 之间存在一条边。另给你一个下标从 0 开始、长度为 n 的数组 coins 和一个整数 k 其中 coins[i] 表示节点 i 处的金币数量。 从根节点开始你必须收集所有金币。要想收集节点上的金币必须先收集该节点的祖先节点上的金币。 节点 i 上的金币可以用下述方法之一进行收集 收集所有金币得到共计 coins[i] - k 点积分。如果 coins[i] - k 是负数你将会失去 abs(coins[i] - k) 点积分。 收集所有金币得到共计 floor(coins[i] / 2) 点积分。如果采用这种方法节点 i 子树中所有节点 j 的金币数 coins[j] 将会减少至 floor(coins[j] / 2) 。 返回收集 所有 树节点的金币之后可以获得的最大积分。 参数范围 n coins.length 2 n 105 0 coins[i] 104 edges.length n - 1 0 edges[i][0], edges[i][1] n 0 k 104 分析 时间复杂度 O(节点数量) DFS调用的次数节点数量*2两种方式)*21(分割方式当n无穷大时2和21忽略。 核心原理 当有祖先节点现在方式二时本节点金币会减半。由于最多有10000个金币所以减半15次后就是0所以减半15次以上和减半15次结果一样。比赛时时间紧急所以弄了20次避免考虑边界情况。 变量解释 m_vRet[m_iN];//m_vRet[0] 未减半各节点及子孙节点的分数 m_vRet[i] 减半i次后的最大分数 代码 核心代码 class CNeiBo2 { public: CNeiBo2(int n, bool bDirect, int iBase 0):m_iN(n),m_bDirect(bDirect),m_iBase(iBase) { m_vNeiB.resize(n); } CNeiBo2(int n, vectorvector edges, bool bDirect,int iBase0) :m_iN(n), m_bDirect(bDirect), m_iBase(iBase) { m_vNeiB.resize(n); for (const auto v : edges) { m_vNeiB[v[0]- iBase].emplace_back(v[1]- iBase); if (!bDirect) { m_vNeiB[v[1]- iBase].emplace_back(v[0]- iBase); } } } inline void Add(int iNode1, int iNode2) { iNode1 - m_iBase; iNode2 - m_iBase; m_vNeiB[iNode1].emplace_back(iNode2); if (!m_bDirect) { m_vNeiB[iNode2].emplace_back(iNode1); } } const int m_iN; const bool m_bDirect; const int m_iBase; vectorvector m_vNeiB; }; class Solution { public: int maximumPoints(vectorvector edges, vector coins, int k) { m_iK k; for (int i 0; i m_iN; i) { m_vRet[i].assign(coins.size(),-1); } CNeiBo2 neiBo(coins.size(),edges, false); dfs(0, -1, 0, neiBo, coins); return m_vRet[0][0]; } int dfs(int cur, const int parent, int split,const CNeiBo2 vNeiBo,const vector coins) { if (split 20) { return 0; } int iRet m_vRet[split][cur]; if (-1 ! iRet) { return iRet; } const int curCoin coins[cur] / (1 split); int iType1 curCoin - m_iK; { for (const auto next : vNeiBo.m_vNeiB[cur]) { if (parent next) { continue; } iType1 dfs(next, cur, split, vNeiBo, coins); } } int iType2 curCoin/2; { for (const auto next : vNeiBo.m_vNeiB[cur]) { if (parent next) { continue; } iType2 dfs(next, cur, split1, vNeiBo, coins); } } iRet max(iType1, iType2); return iRet; } int m_iK; static const int m_iN 20; vector m_vRet[m_iN];//m_vRet[0] 未减半各节点及子孙节点的分数 m_vRet[i] 减半i次后的最大分数 }; 测试用例 template void Assert(const vector v1, const vector v2) { if (v1.size() ! v2.size()) { assert(false); return; } for (int i 0; i v1.size(); i) { assert(v1[i] v2[i]); } } template void Assert(const T t1, const T t2) { assert(t1 t2); } int main() { Solution slu; vectorvector edges; vector coins; int k; int res; edges { {0,1},{1,2},{2,3} }; coins { 10,10,3,3 }; k 5; res slu.maximumPoints(edges, coins,k); Assert(11, res); edges { {0,1},{0,2} }; coins { 8,4,4 }; k 0; res slu.maximumPoints(edges, coins, k); Assert(16, res); //CConsole::Out(res);} 扩展阅读 视频课程 有效学习明确的目标 及时的反馈 拉伸区难度合适可以先学简单的课程请移步CSDN学院听白银讲师也就是鄙人的讲解。 https://edu.csdn.net/course/detail/38771 如何你想快速形成战斗了为老板分忧请学习C#入职培训、C入职培训等课程 https://edu.csdn.net/lecturer/6176 相关下载 想高屋建瓴的学习算法请下载《闻缺陷则喜算法册》doc版 https://download.csdn.net/download/he_zhidan/88348653 充满正能量得对大家说闻缺陷则喜是一个美好的愿望早发现问题早修改问题给老板节约钱。墨家名称的来源有所得以墨记之。如果程序是一条龙那算法就是他的是睛 测试环境 操作系统win7 开发环境 VS2019 C17 或者 操作系统win10 开发环境 VS2022 C17
http://wiki.neutronadmin.com/news/185033/

相关文章:

  • 最好的购物网站中文域名
  • 内蒙古自治区精神文明建设网站中秋节的网页制作模板
  • 新纪实网站建设设计公司起名及寓意
  • 金融网站 源码wordpress小工具没有
  • 建设网站需要花钱吗网站后台找不到了怎么办
  • dede 网站打开慢做微信支付的网站多少钱
  • 咸阳网站建设电话北京网络
  • 遵义建设厅网站常见网页制作工具
  • 重庆公司章程在哪里打印如何对seo进行优化
  • android做网站wordpress mu 下载
  • 跨境电商购物网站网站建设优化项目
  • 设计网站下载2023年企业所得税税收优惠政策
  • 网站建设的技术团队电脑网页无法访问如何解决
  • 做视频在线观看网站广东圆心科技网站开发网站模板设计
  • 个人网站怎么做代码WordPress模版二次元
  • 建个电子商务网站多少钱如何用dw做网站前端
  • 淘客做自己的网站软件项目实施流程
  • 惠州淡水网站建设公司深圳网站设计公司怎么样
  • wdcp 网站备份wordpress4.7无法安装
  • ps做网站动图东莞营销型网站建站
  • wap网站设计规范什么是三合一网站建设
  • 公司的网站怎么建设360建筑网忘记登入密码了怎么办
  • 通过邮箱查注册网站网络推广是什么职位
  • 商城网站的功能学网站开发多少钱
  • seo矩阵培训东莞债优化
  • 查看网站外链代码wordpress 还原
  • 怎样建设网站是什么做网站的困难
  • 网站模板开发主要作用网站页面创意
  • 专业做财务公司网站济南市住房和城乡建设局官网
  • 华为云助力企业网站安全保障优秀企业网站案例