* 6.3  树和二叉树

** 小球下落问题

//小球下落问题
/*有一棵二叉树,最大深度为D,且所有叶子的深度相同.所有节点从上到下从左到右编号为1,2,3,4,...,2^D-1.在节点1处放一小球,它会往下落.每个内节点上都有一个开关,初始全部关闭,当每次有有小球落在开关上是,状态都会改变.当小球到达一个内节点时,如果该节点上的开关关闭,则往左走,否则往右走,直到走到叶子结点.一些小球从结点1处依次开始下落,最后一个小球会落到哪里呢?输入:     叶子深度D和小球个数I输出:     第I个小球最后所在叶子的编号 */
#include<cstdio>
#include<cstring>
const int maxd = 20;
int s[1<<maxd]; //最大结点个数为2^maxd - 1
int main(){int D, I;while(scanf("%d%d", &D, &I) == 2){memset(s, 0, sizeof(s)); //开关 int k, n = (1<<D)-1; //n是最大结点编号for(int i = 0; i < I; i++){ //连续让I个小球下落 k = 1;for(;;){s[k] = !s[k];k = s[k]?k*2:k*2+1; //根据开关选择下落方向 if(k > n) break; //已经落出界了
            }} printf("%d\n", k/2); //出界之前的编号
    }return 0;
} 

运行结果:

转载于:https://www.cnblogs.com/ncgds/p/7719769.html

算法竞赛入门经典_6数据结构基础相关推荐

  1. 算法竞赛入门经典(第二版)-刘汝佳-第六章 数据结构基础 习题(12/14)

    文章目录 说明 习题 习6-1 UVA 673 平衡的括号 习6-2 UVA 712 S - 树 习6-3 UVA 536 二叉树重建 习6-4 UVA 439 骑士的移动 习6-5 UVA 1600 ...

  2. 《算法竞赛入门经典训练指南》pdf

    下载地址:网盘下载 基本介绍 编辑 内容简介 <算法竞赛入门经典:训练指南>题目多选自近年来ACM/ICPC区域赛和总决赛真题,内容全面,信息量大,覆盖了常见算法竞赛中的大多数细分知识点. ...

  3. (Step1-500题)UVaOJ+算法竞赛入门经典+挑战编程+USACO

    下面给出的题目共计560道,去掉重复的也有近500题,作为ACMer Training Step1,用1年到1年半年时间完成.打牢基础,厚积薄发. 一.UVaOJ http://uva.onlinej ...

  4. 刘汝佳《算法竞赛入门经典》---总结

    刘汝佳:<算法竞赛入门经典> 三步: 基本的数据结构+算法知识: 数论等数学基本知识: 锻炼联想建模能力.知识与实际相结合,解决实际问题! 第一章:程序设计入门 1.a/b 当a.b为整数 ...

  5. 《算法竞赛入门经典——训练指南》第一章相关内容

    #<算法竞赛入门经典--训练指南>第一章相关内容 希望各位大牛能指导! 红色为已经做了的...黄色背景是还有不懂地方,希望在年前能刷完第一章啊.... 更新版.google上貌似又加了ex ...

  6. 《算法竞赛入门经典(第二版)》pdf

    下载地址:网盘下载 内容简介  · · · · · · <算法竞赛入门经典(第2版)>是一本算法竞赛的入门与提高教材,把C/C++语言.算法和解题有机地结合在一起,淡化理论,注重学习方法和 ...

  7. 算法竞赛入门经典——训练指南

    <算法竞赛入门经典--训练指南> 基本信息 作者: 刘汝佳 陈锋 [作译者介绍] 丛书名: 算法艺术与信息学竞赛 出版社:清华大学出版社 ISBN:9787302291077 上架时间:2 ...

  8. 算法竞赛入门经典+挑战编程+USACO

    下面给出的题目共计560道,去掉重复的也有近500题,作为ACMer Training Step1,用1年到1年半年时间完成.打牢基础,厚积薄发. 一.UVaOJ http://uva.onlinej ...

  9. 【算法竞赛入门经典】读书笔记

    前言 寒假期间准备一下练一下OJ,对于我这个小菜鸟来说,打稳基础很是关键.听说过[算法竞赛入门经典]的大名,加上自己学习的是 C++ ,而这本书用的是 C ,多学一门语言也是不错的.因此决定每天最少看 ...

最新文章

  1. tensorflow 2
  2. Android 几种换肤方式和原理分析
  3. linux 服务管理两种方式service和systemctl
  4. mongo在哪创建管理员_MongoDB添加用户
  5. (Sql Server)SQL FOR XML PATH
  6. udp本地通信需要注意哪些方面_验房注意什么?验房都需要检查哪些方面?
  7. [蓝桥杯][2014年第五届真题]排列序数(思维)
  8. java float什么类型数据类型_Java中的Float和double数据类型
  9. 在Windows平台下使用Gitblit搭建Git服务器图文解说
  10. SpringBoot入门教程
  11. Neo4j_02了解图数据库
  12. 音乐社交APP源码项目
  13. Web前端性能优化优秀文章集锦
  14. 聚合物电容作用原理与基础
  15. python — 二手房
  16. vb语言中怎样编码窗体中所有字体加粗_VBText控件中使字体加粗和倾斜的代码是什么...
  17. js中条件三目运算符?:
  18. 外汇天眼:Axi收回在RGT Capital的全部控制权,Eurotrader获得FCA牌照
  19. *a++的含义及C语言中的左值(Lvalues)和右值(Rvalues)
  20. 西安80 投影坐标 转 WGS84—— Java 使用proj4j库

热门文章

  1. 简单的聊聊,顺便招前端
  2. AI 一体机,满足新时代的新需求
  3. 如何隐藏你的 Linux 的命令行历史
  4. Debug javascript inside jsp page 调试jsp嵌入的js
  5. 批量插入使用SqlBulkCopy
  6. JAVA--虚函数,抽象函数,抽象类,接口
  7. 获取上传文件的后缀名
  8. HDU 4281 Judges' response [MTSP]
  9. java中文乱码问题的原因是什么?怎么解决中文乱码问题?
  10. MongoDB 从节点 延迟的测试