news 2026/7/7 19:29:55

FBI树(fbi)(信息学奥赛一本通- P1365)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
FBI树(fbi)(信息学奥赛一本通- P1365)

【题目描述】

我们可以把由“0”和“1”组成的字符串分为三类:全“0”串称为B串,全“1”串称为I串,既含“0”又含“1”的串则称为F串。

FBI树是一种二叉树,它的结点类型也包括F结点,B结点和I结点三种。由一个长度为2N的“01”串S可以构造出一棵FBI树T,递归的构造方法如下:

T的根结点为R,其类型与串S的类型相同;

若串S的长度大于1,将串S从中间分开,分为等长的左右子串S1和S2;由左子串S1构造R的左子树T1,由右子串S2构造R的右子树T2。

现在给定一个长度为2N的“01”串,请用上述构造方法构造出一棵FBI树,并输出它的后序遍历序列。

【输入】

第一行是一个整数N(0≤N≤10),第二行是一个长度为2N的“01”串。

【输出】

一行,这一行只包含一个字符串,即FBI树的后序遍历序列。

【输入样例】

3 10001011

【输出样例】

IBFBBBFIBFIIIFF

【提示】

对于40%的数据,N≤2;

对于100%的数据,N≤10。

//是一颗满二叉树,我们用顺序存储 #include <iostream> #include <algorithm> #include <cmath> using namespace std; string a; char tre[5000]; void postorder(int root){ if(tre[root*2]) postorder(root*2); if(tre[root*2+1]) postorder(root*2+1); cout<<tre[root]; } int main(){ int n; cin>>n; cin>>a; //先给最后一层赋值 int cnt=0; //把顺序存储最后一行的叶子节点先存进去 for(int i=pow(2,n);i<pow(2,n+1);i++){ if(a[cnt]=='1') tre[i]='I'; else if(a[cnt]=='0') tre[i]='B'; cnt++; } //建树 倒着建 n+1就是总层数 for(int i=n;i>=1;i--){//该树总共会有n层 for(int j=pow(2,i);j<pow(2,i+1);j=j+2){//每层有这么多个节点 if(tre[j]==tre[j+1]) tre[j/2]=tre[j]; else tre[j/2]='F'; } } //后序遍历 postorder(1); return 0; }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/7 16:36:20

Python安装环境选型指南:Anaconda vs Miniconda vs pipenv

Python环境管理的精简之道&#xff1a;为什么Miniconda成为AI开发首选 在深度学习实验室的一角&#xff0c;研究员小李正为一个紧急问题焦头烂额——他刚从GitHub下载的论文复现代码&#xff0c;在自己机器上运行时报错&#xff1a;“numpy.core.multiarray failed to import”…

作者头像 李华
网站建设 2026/7/7 14:26:46

Diskinfo下载官网无关?但你不能忽略Qwen3-14B的存储优化策略

Qwen3-14B 的存储优化策略&#xff1a;为何“与 diskinfo 无关”的设计&#xff0c;决定了 AI 系统的稳定性 在智能客服、合同审查、自动化工单等企业级AI应用日益普及的今天&#xff0c;一个看似不起眼的问题正在悄然影响服务体验——为什么模型响应越来越慢&#xff1f;明明用…

作者头像 李华
网站建设 2026/7/7 9:23:22

火山引擎AI大模型免费试用,包含Qwen-Image-Edit-2509实例

火山引擎AI大模型免费试用&#xff0c;包含Qwen-Image-Edit-2509实例 在电商运营的深夜&#xff0c;你是否曾为上千张商品图要手动加“限时折扣”标签而焦头烂额&#xff1f;在社交媒体团队争分夺秒追热点时&#xff0c;设计师却还在反复调整海报文字排版——这些场景正在被一种…

作者头像 李华
网站建设 2026/7/6 23:42:29

打破语言壁垒:Screen Translator如何让你轻松读懂全世界

你是否曾经遇到过这样的困境&#xff1a;阅读外文资料时&#xff0c;满屏的陌生文字让你无从下手&#xff1f;观看外语视频时&#xff0c;精彩内容因为语言障碍而变得索然无味&#xff1f;或者在国际网站上购物时&#xff0c;因为看不懂产品说明而犹豫不决&#xff1f; 【免费下…

作者头像 李华
网站建设 2026/7/6 2:06:12

如何高效配置Zotero参考文献插件:学术研究的完整指南

在当今学术研究领域&#xff0c;文献管理已成为每位研究者必须面对的重要课题。Zotero作为一款强大的开源文献管理工具&#xff0c;配合其参考文献插件&#xff0c;能够实现PDF文献的智能解析和多源数据整合&#xff0c;为学术工作者提供完整的参考文献解析解决方案。 【免费下…

作者头像 李华