2026年6月GESP真题及题解(C++六级):满二叉树
📅 2026/7/6 20:19:55
👁️ 次浏览
2026年6月GESP真题及题解C六级满二叉树题目描述给定一棵包含n nn个结点的有根二叉树结点依次以1 , 2 , … , n 1, 2, \dots, n1,2,…,n编号根结点编号为1 11。对于结点i ii其左儿子的编号记为l i l_ili右儿子编号记为r i r_iri。特别地如果左儿子不存在则l i 0 l_i 0li0如果右儿子不存在则r i 0 r_i 0ri0。树中每个结点都对应一棵以其为根的子树。请你求出给定有根树的所有n nn棵子树中有多少棵子树是满二叉树。满二叉树是指所有叶子深度均相同且除叶子外均有两个儿子的二叉树例如以下三棵二叉树均是满二叉树() () () / \ / \ () () () () / \ / \ () ()() ()在上面这棵有3 33个节点的二叉树中有3 33个子树是满二叉树包括整个树本身及所有的单个叶子节点又例如(1) / \ (2) (3) / \ (4) (5)在上面这棵有5 55个节点的二叉树中有4 44个子树是满二叉树包括节点3 33的子树以及所有单个叶子节点。输入格式第一行一个正整数n nn表示有根二叉树结点数量。接下来n nn行每行两个非负整数l i , r i l_i, r_ili,ri表示结点i ii的左儿子编号和右儿子编号整数之间以空格分隔。输出格式输出一行一个整数表示所有子树中满二叉树的数量。输入输出样例 1输入 14 2 3 4 0 0 0 0 0输出 12输入输出样例 2输入 23 2 3 0 0 0 0输出 23说明/提示数据范围对于40 % 40\%40%的测试点保证1 ≤ n ≤ 500 1 \le n \le 5001≤n≤500。对于所有测试点保证1 ≤ n ≤ 10 5 1 \le n \le 10^51≤n≤105。思路分析判断一棵二叉树是否为满二叉树需要满足两个条件每个结点要么是叶子左右儿子均为空要么同时拥有左右两个儿子所有叶子深度相同即从根到任一叶子的路径长度相等。对于任意结点u我们可以递归地判断其子树若u是叶子则其子树是满二叉树高度为0若u同时存在左儿子L和右儿子R则只有当L和R的子树都是满二叉树且高度相等时u的子树才是满二叉树高度为h[L] 1否则只有一个儿子或左右子树高度不等或非满u的子树不是满二叉树。用数组f[u]记录结点u的子树是否为满二叉树true/falseh[u]记录其高度仅在f[u]为真时有效。采用递归后序遍历先处理左右儿子再计算当前结点。最终统计所有f[u] true的结点个数。时间复杂度O(n)每个结点访问一次。空间复杂度O(n)用于存储树和状态数组。代码实现#includebits/stdc.husingnamespacestd;constintN100005;intn,l[N],r[N];// l[i]:i的左儿子, r[i]:i的右儿子boolf[N];//标记以i为根的子树是否为满二叉树inth[N];//记录以i为根的满二叉树的高度//深度优先后序遍历计算每个结点的满二叉树状态和高度voiddfs(intu){if(!u)return;//空结点直接返回dfs(l[u]);//递归处理左子树dfs(r[u]);//递归处理右子树if(!l[u]!r[u]){//当前结点是叶子(无左右儿子)f[u]1;//标记为满二叉树h[u]0;//高度为0}elseif(l[u]r[u]f[l[u]]f[r[u]]h[l[u]]h[r[u]]){//有两个儿子且左右子树均为满二叉树且高度相等f[u]1;//当前子树也是满二叉树h[u]h[l[u]]1;//高度为左子树高度1}else{//不满足满二叉树条件f[u]0;//标记为非满h[u]0;//高度置0}}intmain(){cinn;for(inti1;in;i)cinl[i]r[i];dfs(1);//从根结点1开始后序遍历intans0;//计数器for(inti1;in;i)if(f[i])ans;//统计所有满二叉子树个数coutans;return0;}功能分析输入读入结点数n及每个结点的左右儿子编号0 表示不存在。递归后序遍历dfs(u)先递归左右子树再根据左右子树的满二叉树状态和高度计算当前结点。状态判定叶子直接标记为满高度 0。有两个儿子且二者均为满且高度相等标记为满高度加 1。其他情况非满高度置 0。统计遍历所有结点累加f[i]为真的个数并输出。各种学习资料助力大家一站式学习和提升#includebits/stdc.husingnamespacestd;intmain(){cout########## 一站式掌握信奥赛知识! ##########;cout############# 冲刺信奥赛拿奖! #############;cout###### 课程购买后永久学习不受限制! ######;return0;}【秘籍汇总】完整csp信奥赛C学习资料1、csp/信奥赛C完整信奥赛系列课程永久学习https://edu.csdn.net/lecturer/7901 点击跳转2、CSP信奥赛C竞赛拿奖视频课https://edu.csdn.net/course/detail/40437 点击跳转https://edu.csdn.net/course/detail/41081 点击跳转3、csp信奥赛高频考点知识详解及案例实践CSP信奥赛C动态规划https://blog.csdn.net/weixin_66461496/category_13096895.html点击跳转CSP信奥赛C标准模板库STLhttps://blog.csdn.net/weixin_66461496/category_13108077.html 点击跳转信奥赛C提高组csp-s知识详解及案例实践https://blog.csdn.net/weixin_66461496/category_13113932.html 点击跳转4、csp信奥赛冲刺一等奖有效刷题题解信奥赛C普及组CSP-J一等奖通关刷题题单及题解https://blog.csdn.net/weixin_66461496/category_12673810.html 点击跳转信奥赛C普及组csp-j初赛复赛真题题解持续更新https://blog.csdn.net/weixin_66461496/category_12808781.html 点击跳转信奥赛C提高组csp-s初赛复赛真题题解持续更新https://blog.csdn.net/weixin_66461496/category_13125089.html 点击跳转5、GESP C考级真题题解GESP(C 一级二级三级)真题题解持续更新https://blog.csdn.net/weixin_66461496/category_12858102.html 点击跳转GESP(C 四级五级六级)真题题解持续更新https://blog.csdn.net/weixin_66461496/category_12869848.html 点击跳转GESP(C 七级八级)真题题解持续更新https://blog.csdn.net/weixin_66461496/category_13117178.html 点击跳转· 文末祝福 ·#includebits/stdc.husingnamespacestd;intmain(){cout跟着王老师一起学习信奥赛C;cout 成就更好的自己 ;cout csp信奥赛一等奖属于你! ;return0;}
ImGui Java实战教程:使用ImPlot创建专业级数据可视化图表 【免费下载链接】imgui-java JNI based binding for Dear ImGui 项目地址: https://gitcode.com/gh_mirrors/im/imgui-java
ImGui Java是一个基于JNI的Dear ImGui绑定库,它允许Java开发者…
📅 2026/7/6 20:19:55
Mix 2.0与Material Design集成:如何创建一致的设计语言 【免费下载链接】mix A styling system for Flutter 项目地址: https://gitcode.com/gh_mirrors/mix4/mix
Mix 2.0是一个强大的Flutter样式系统,它能够与Material Design无缝集成࿰…
📅 2026/7/6 20:19:55
Calf Studio Gear核心插件详解:压缩器、均衡器与混响效果实战指南 【免费下载链接】calf Developers repository of Calf Studio Gear. Expect some issues when using it for production. 项目地址: https://gitcode.com/gh_mirrors/cal/calf
Calf Studio G…
📅 2026/7/6 20:17:55
随着电动两轮车市场的蓬勃发展,尤其是在中短途代步和共享出行领域,锂电池凭借其高能量密度和性价比已成为主流。然而,随之而来的安全与管理挑战也日益凸显。电池管理系统(BMS)的角色,正从一个单纯的“电池管…
📅 2026/7/7 0:28:50
3分钟搞定全网热门资源:res-downloader视频号批量下载终极方案 【免费下载链接】res-downloader 视频号、小程序、抖音、快手、小红书、直播流、m3u8、酷狗、QQ音乐等常见网络资源下载! 项目地址: https://gitcode.com/GitHub_Trending/re/res-downloader
你…
📅 2026/7/7 0:28:50
终极跨语言阅读解决方案:DeepL翻译插件如何让外文内容秒变中文 【免费下载链接】deepl-chrome-extension A DeepL Translator Chrome extension 项目地址: https://gitcode.com/gh_mirrors/de/deepl-chrome-extension
在全球化的数字时代,语言障碍…
📅 2026/7/7 0:28:50
Cascade R-CNN与迭代式检测架构的深度对比:技术选型与性能优化指南在目标检测领域,级联结构设计一直是提升模型精度的有效手段。当算法工程师面临Cascade R-CNN、Iterative BBox和Integral Loss三种主流级联架构选型时,需要深入理解其核心差异…
📅 2026/7/7 0:28:50
1. IS31FL3731与PIC18LF27J13的硬件协同设计IS31FL3731是一款采用I2C接口的可编程LED矩阵驱动芯片,而PIC18LF27J13则是Microchip公司推出的8位高性能微控制器。这套组合在嵌入式视觉项目中展现出独特的优势:IS31FL3731通过简洁的两线制接口即可控制多达1…
📅 2026/7/7 0:28:50
Monorepo 工程化实战:Turborepo pnpm 的全栈项目组织与构建缓存
一、多仓库协作的效率黑洞:当你维护 5 个 npm 包时,改一行代码要跑几个 CI
全栈项目的常见组织方式是:前端一个仓库,后端一个仓库,共享类型…
📅 2026/7/7 0:26:49
CentOS SSH连接故障排查:从基础检查到深度修复的完整指南引言当你尝试通过Xshell或其他SSH客户端连接CentOS服务器时,突然遭遇"Connection refused"或"Connection timed out"的错误提示,这种经历对任何运维人员或开发者来…
📅 2026/7/7 0:00:45
B站评论删除API逆向工程实战:关键参数解析与自动化操作指南1. 理解B站评论删除机制的核心逻辑在视频平台内容管理中,评论删除功能涉及复杂的权限验证和数据交互流程。B站的评论删除API采用了一套基于Web安全标准的防护机制,主要依赖三个关键参…
📅 2026/7/7 0:00:45
1. 项目概述:为什么Java安全是红蓝对抗的焦点在当前的网络安全攻防演练,也就是我们常说的红蓝对抗中,Java应用一直是双方交锋的核心战场。这不仅仅是因为Java在企业级应用、金融系统和大型互联网后台中无处不在,更因为其技术栈的复…
📅 2026/7/7 0:00:45
1. 项目背景与核心需求 在嵌入式系统开发中,快速精确的数据检索是一个常见但极具挑战性的需求。特别是在工业控制、医疗设备和物联网终端等场景下,系统往往需要在毫秒级时间内完成关键参数的读取和写入操作。传统基于Flash存储的方案存在擦写次数有限、操…
📅 2026/7/6 10:35:30
1. 工业电流环信号传输的基础认知在工业自动化领域,4-20mA电流环传输技术已经持续服役超过半个世纪。这种看似简单的信号传输方式之所以能经久不衰,核心在于其独特的抗干扰能力——电流信号在长距离传输时几乎不受线路电阻和电压波动的影响。我曾在化工厂…
📅 2026/7/6 6:10:21
最近在项目里尝试用 YOLO 做目标检测,从环境搭建到模型训练,再到推理部署,整个过程踩了不少坑。网上的资料虽然多,但要么版本老旧,要么步骤零散不成体系,对于刚入门的新手来说,很容易卡在某个环…
📅 2026/7/6 5:35:58
目录
第一步:选对模板,省心一半
第二步:打开扫码点餐功能
开启功能按钮
桌台管理与桌码生成
第三步:个性化设计,打造品牌感
调整点餐页面
设置点餐规则 你还在让顾客站着排队点餐吗?2025年ÿ…
📅 2026/7/6 6:10:28
在业务中快速构建一个能理解私有文档、准确回答专业问题的智能助手,是很多开发团队面临的共同挑战。传统方案往往需要从零开始搭建复杂的 RAG(检索增强生成)系统,涉及文档解析、向量化、检索、大模型调用等多个环节,整…
📅 2026/7/6 6:10:26
FAE放射组学分析工具:医学影像特征探索的完整解决方案 【免费下载链接】FAE FeAture Explorer 项目地址: https://gitcode.com/gh_mirrors/fae/FAE
你是否曾经面对海量医学影像数据感到无从下手?想要从CT、MRI等影像中提取有价值的定量特征&#…
📅 2026/7/5 23:45:08