题解 2299: 蓝桥杯2019年第十届省赛真题-完全二叉树的权值

来看看其他人写的题解吧!要先自己动手做才会有提高哦! 
返回题目 | 我来写题解

筛选

java暴力打表,幼儿园小班都能看懂的解法!

#思路-用sum保存每一层的总和,max保存此时的最大值。遇到每一层最后一个数字时更新max和sum。-用一个数组保存每一层最后一个数字的下标(下标从1开始)#代码```publicstaticvoidmain(String[]args){Scannersc=newScanner(System.in)

完全二叉树的权值 c++超简洁

摘要:解题思路:因为深度i是深度i-1的2倍,所以定义一个s来表示每层深度的结点数注意事项:需要了解二叉树的基本概念参考代码:#include<bits/stdc++.h>using namespace s……

完全二叉树的权值最详细注释

利用树的性质主要两个点:1.最后一层节点可能不是满的,所以需要加上这个判断条件(i==n-1)2.下一层的节点数是上一层的节点数*2,通过判断当前第几个节点是否==该层总结点数,来确定是否到达该层最后一个,若是则需要将当前第几个节点和该层权值和置零,

时间复杂度O(n)的算法

摘要:解题思路:注意事项:参考代码:#include<bits/stdc++.h>using namespace std;#define maxn 100010//−100000≤ Ai ≤100000ty……

利用完全二叉树性质,非广搜得到答案

```C++#include#includeintn,cnt,x,ans;longlongw[1000],maxn=-1e9;/*思路:从1遍历到n,根据完全二叉树的性质,使用log2(n)+1,可以求出任意节点的深度。保存后取最大值即可。注意开longlong!!!*/intmain(){std::