二叉树算法题—— [蓝桥杯 2019 省 AB] 完全二叉树的权值

题目https://www.luogu.com.cn/problem/P8681

代码如下:

cpp 复制代码
#include <bits/stdc++.h>

using namespace std;
#define fs first
#define sc second
#define endl '\n'
#define all(x) x.begin(), x.end()
typedef long long ll;
typedef pair<int, int> PII;

const int N = 1e5;

int minh = -1;

int n;

int sum[N],a[N];

void dfs(int node,int h){
	if(node>n)return;
	
	sum[h]+=a[node];
	
	dfs(2*node,h+1);
	dfs(2*node+1,h+1);

    if(sum[h]>sum[minh]) minh = h;
}

int main(){
	
    cin.tie(0);
    cout.tie(0);
    ios::sync_with_stdio(0);

    cin>>n;
    
    for(int i=1;i<=n;i++)cin>>a[i];
    
    dfs(1,1);
    
    cout<<minh<<endl;
    
    return 0;
}

测评结果:

相关推荐
有点。9 分钟前
C++ ⼀级 2024 年 03 ⽉
c++
CC.GG30 分钟前
【C++】二叉搜索树
java·c++·redis
Savior`L2 小时前
二分算法及常见用法
数据结构·c++·算法
深海潜水员2 小时前
OpenGL 学习笔记 第一章:绘制一个窗口
c++·笔记·学习·图形渲染·opengl
mmz12072 小时前
前缀和问题(c++)
c++·算法·图论
ULTRA??2 小时前
初学protobuf,C++应用例子(AI辅助)
c++·python
旖旎夜光3 小时前
list实现(7)(上)
c++
努力学算法的蒟蒻3 小时前
day27(12.7)——leetcode面试经典150
算法·leetcode·面试
不会c嘎嘎3 小时前
深入理解 C++ 异常机制:从原理到工程实践
开发语言·c++
崇山峻岭之间3 小时前
C++ Prime Plus 学习笔记026
c++·笔记·学习