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

广告设计有创意的名字台州关键词优化报价

广告设计有创意的名字,台州关键词优化报价,html 好的网站,重庆网站建设营销目录 题目: 示例: 分析: 代码: 题目: 示例: 分析: 题目给我们一些元素,让我们用这些元素连接形成特定的二叉树,每种元素可以使用任意次数,形成的二叉树要…

目录

题目:

示例:

分析:

代码:


题目:

示例:

分析:

题目给我们一些元素,让我们用这些元素连接形成特定的二叉树,每种元素可以使用任意次数,形成的二叉树要求每个非叶子节点的值都为左右子树节点的值的乘积。

一个数要等于两个数的乘积,那么那两个数一定会比那一个数更小,所以我们可以从较小的数入手,那么我们首先将数组从小到大进行排序,接着从左到右,从小到大去遍历。

在遍历之前我们先做个预处理,我们用一个map来存住所有元素的值,以元素为键,值全部初始化为1。map每个键值对的含义就是以键为根节点能形参的二叉树有多少个,因为每个元素都可以以自身一个节点为一棵符合标准的二叉树,所以是初始化为1。

初始化完毕就开始遍历,我们需要套两层for循环,第一层去遍历每个根节点,去更新以当前节点为根节点所能形成的二叉树的数量,更新的方法就是第二层for循环去遍历比这个节点的值更小的元素,因为要相乘等于当前元素,那么乘数肯定是比当前元素更小的。

第一层遍历我们设下标为 i ,第二层下标为 j ,我们去寻找 arr[ i ] / arr[ j ] 这个元素在不在我们的map里,如果在,那么我们就把map里键为arr[ i ] 的键值对中的值加上以那两个乘数为根节点能形成的二叉树的数量的乘积,化简一下就是 m[ arr [ i ] ] += m[ arr[ i ] / arr[ j ] ] * m[ arr[ j ] ]。

由于我们是从小到大遍历的,所以我们每次都是会更新比后面的数更小的元素,以此元素为根节点能形参的二叉树,这样就可以得到推导出以后面较大的元素为根节点能形参的二叉树的数量。所以虽然我们没有用到dp数组,但它本质上来说还是属于动态规划。

还有一点要注意的就是题目有说要对结果取余10的九次方加7,所以为了避免数值溢出,我们每次操作都要做一个取余的操作。

代码:

class Solution {
public:int numFactoredBinaryTrees(vector<int>& arr) {int res=arr.size(); //单个节点可以单独为一棵树,初始化为数组长度sort(arr.begin(),arr.end());unordered_map<int,long>m;   //用来记录以每个数为根节点的二叉树数目for(int i:arr){m[i]=1;}for(int i=0;i<arr.size();i++){for(int j=0;j<i;j++){//如果发现arr[i]整除arr[j]的数也在数组里,那么可以多组成的二叉树数目等于以arr[j]为根节点的二叉树数目乘上以另一个除数为根节点的二叉树数目.if(arr[i]%arr[j]==0&&m.find(arr[i]/arr[j])!=m.end()){int t=m[arr[i]/arr[j]]*m[arr[j]]%1000000007;m[arr[i]]+=t;   //更新以arr[i]为根节点的二叉树数目.res+=t;res%=1000000007;}}}return res;}
};

http://www.hkea.cn/news/12005/

相关文章:

  • 企业网站建设价格seo自学教程
  • 延安做网站电话小白如何学电商运营
  • java做的网站怎么修改密码谷歌浏览器2021最新版
  • 网站怎么做rss订阅功能网络广告文案案例
  • 辽宁省住房建设厅网站搭建自己的网站
  • 怎么做自己网站的后台免费ip地址网站
  • 电商网站怎样做十大技能培训机构排名
  • 做服装网站各大搜索引擎网址
  • wordpress标题分隔符 seo won
  • 台州网站建设惠店搜狗搜索引擎优化
  • 美工素材网站有哪些有哪些搜索引擎
  • 广东东莞人才网seo关键词排名优化要多少钱
  • 常州网站制作多少钱佛山seo
  • 做跨境网站网络推广公司收费标准
  • 灵璧做网站免费推广网站大全
  • 上合建设网站企业优化绿松石什么意思
  • wordpress theme sage网站推广优化的原因
  • 网站怎么做动态图片成都百度推广开户公司
  • 做淘宝客网站php苏州seo门户网
  • 微信网站开发的代码seo的内容怎么优化
  • 网站制作品牌公司福州百度快速优化排名
  • 最近火爆的新闻宁波seo推广推荐公司
  • 湖州市住房和城乡建设局官方网站搜索引擎优化的具体措施
  • 建什么网站好2023年8月新闻热点事件
  • 网站改版设计方案alexa排名
  • 龙泉市做网站企业阿里云服务器
  • 本地常州网站建设最近热搜新闻事件
  • 河南濮阳建设局网站seo专业推广
  • 河北省建设集团有限公司网站首页营销培训内容有哪些
  • 58同城网网站建设推广优化排名