news 2025/12/31 12:33:43

小球(drop)(信息学奥赛一本通- P1363)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
小球(drop)(信息学奥赛一本通- P1363)

【题目描述】

许多的小球一个一个的从一棵满二叉树上掉下来组成FBT(Full Binary Tree,满二叉树),每一时间,一个正在下降的球第一个访问的是非叶子节点。然后继续下降时,或者走右子树,或者走左子树,直到访问到叶子节点。决定球运动方向的是每个节点的布尔值。最初,所有的节点都是false,当访问到一个节点时,如果这个节点是false,则这个球把它变成true,然后从左子树走,继续它的旅程。如果节点是true,则球也会改变它为false,而接下来从右子树走。满二叉树的标记方法如下图:

因为所有的节点最初为false,所以第一个球将会访问节点1,节点2和节点4,转变节点的布尔值后在在节点8停止。第二个球将会访问节点1、3、6,在节点12停止。明显地,第三个球在它停止之前,会访问节点1、2、5,在节点10停止。

现在你的任务是,给定FBT的深度D,和I,表示第I个小球下落,你可以假定I不超过给定的FBT的叶子数,写一个程序求小球停止时的叶子序号。

【输入】

一行包含两个用空格隔开的整数D和I。其中2≤D≤20,1≤I≤524288。

【输出】

对应输出第I个小球下落停止时的叶子序号。

【输入样例】

4 2

【输出样例】

12
#include <iostream> using namespace std; int d,l;//二叉树深度 第l个小球 int tre[1048600]; int root; int main(){ cin>>d>>l; for(int i=1;i<=l;i++){//总共l个小球要下落 root=1;//每次从一号节点出发 for(int j=1;j<d;j++){//每次下落要经过d-1层 最后停留在叶子节点即d层 if(tre[root]==0){//如果这个节点是false,则这个球把它变成true,然后从左子树走 tre[root]=1; root=root*2;//因为是满二叉树,所以root节点左子树为root*2 } else if(tre[root]==1){//如果节点是true,则球也会改变它为false,而接下来从右子树走 tre[root]=0; root=root*2+1;//因为是满二叉树,所以root节点右子树为root*2+1 } } } cout<<root;//最后停留的叶子序号 return 0; }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2025/12/25 15:59:33

Java毕设项目推荐-基于SpringBoot+Vue的汽配销售管理系统基于JavaWeb的汽配销售管理系统【附源码+文档,调试定制服务】

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华
网站建设 2025/12/25 12:55:15

PHP转Go必看!GoFrame框架详解+30分钟搭建CRUD API(附代码步骤)

最近贼有意思&#xff0c;发现了一个账号&#xff0c;专门发PHP转Go的帖子&#xff0c;哎呦喂&#xff0c;这不正是我3年前做的事情吗&#xff1f;哈哈。 尤其看到他写的安利GoFrame教程的文章&#xff0c;有点刺激到我了&#xff0c;一看他就没我用的多&#xff0c;用的溜&…

作者头像 李华
网站建设 2025/12/26 0:20:44

如何快速掌握Mermaid Live Editor:专业图表制作的终极指南

如何快速掌握Mermaid Live Editor&#xff1a;专业图表制作的终极指南 【免费下载链接】mermaid-live-editor Edit, preview and share mermaid charts/diagrams. New implementation of the live editor. 项目地址: https://gitcode.com/GitHub_Trending/me/mermaid-live-ed…

作者头像 李华
网站建设 2025/12/26 6:21:23

YOLO模型部署到生产环境的最佳实践

YOLO模型部署到生产环境的最佳实践 在智能制造车间的质检线上&#xff0c;每分钟都有成百上千个工件经过摄像头。传统人工目检不仅效率低、易疲劳&#xff0c;还难以满足99.9%以上的缺陷检出率要求。而如今&#xff0c;一套搭载YOLO模型的边缘视觉系统&#xff0c;能在200毫秒内…

作者头像 李华