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

1339. 分裂二叉树的最大乘积

 

链接:

​​​​​​1339. 分裂二叉树的最大乘积

题解:

/*** Definition for a binary tree node.* struct TreeNode {*     int val;*     TreeNode *left;*     TreeNode *right;*     TreeNode() : val(0), left(nullptr), right(nullptr) {}*     TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}*     TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}* };*/
class Solution {
public:int maxProduct(TreeNode* root) {if (!root) {return 0;}int sum = 0;dfs(root, sum);long long result = 0;dfs2(root, sum, result);        int mod = 1000000007;return result%mod;}
private:void dfs(TreeNode* root, int& sum) {if (!root) {return;}sum += root->val;dfs(root->left, sum);dfs(root->right, sum);}int dfs2(TreeNode* root, int sum, long long& result) {if (!root) {return 0;}long long cur = dfs2(root->left, sum, result) + dfs2(root->right, sum, result) + root->val;long long tmp_result = (sum-cur)*cur;if (tmp_result > result) {result = tmp_result;}return cur;}
};

http://www.lryc.cn/news/132031.html

相关文章:

  • 【C++】Stack和Queue
  • Maven之tomcat7-maven-plugin 版本低的问题
  • 在项目中如何解除idea和Git的绑定
  • AGI 在网易云信的技术提效和业务创新
  • 线性代数的学习和整理9(草稿-----未完成)
  • React的useReducer与Reudx对比
  • 深度学习环境搭建 cuda、模型量化bitsandbytes安装教程 windows、linux
  • pythond assert 0 <= colx < X12_MAX_COLS AssertionError
  • js简介以及在html中的2种使用方式(hello world)
  • vsCode使用cuda
  • ubuntu无法使用apt命令时怎么安装库
  • 防火墙firewall
  • 拿来即用,自己封装的 axios
  • Hadoop小结(下)
  • 使用老北鼻AI免费GPT对话解决gun make安装和解析iso9660的问题
  • shell脚本语句
  • 【LeetCode】2235.两整数相加
  • springboot sl4j2 写入日志到mysql
  • 用 PyTorch 编写分布式应用程序
  • 空间分析专属 Python 学习资料
  • 2. Linux Server 20.04 Qt5.14.2配置Jetson Orin Nano Developer Kit 交叉编译环境
  • vue入门
  • 区块链中slot、epoch、以及在slot和epoch中的出块机制,分叉原理(自己备用)
  • 免费开源的vue+express搭建的后台管理系统
  • 【开发】视频云存储EasyCVR视频汇聚平台AI智能算法定制
  • Ribbon:负载均衡及Ribbon
  • 【声波】声波在硼酸、硫酸镁 (MgSO4) 和纯水中的吸收研究(Matlab代码实现)
  • 使用swoole实现实时消息推送给客户端
  • Ordinals 之后,以太坊铭文协议 Ethscriptions 如何再塑 NFT 资产形态
  • Python绘制爱心代码(七夕限定版)