https://www.nowcoder.com/practice/9a10d5e7d99c45e2a462644d46c428e4?tpId=67&tqId=29641&rp=0&ru=/kaoyan/retest/1005&qru=/ta/bupt-kaoyan/question-ranking

题目描述

有一棵树,输出某一深度的所有节点,有则输出这些节点,无则输出EMPTY。该树是完全二叉树。

输入描述:

  1. 输入有多组数据。
    每组输入一个n(1<=n<=1000),然后将树中的这n个节点依次输入,再输入一个d代表深度。

输出描述:

  1. 输出该树中第d层得所有节点,节点间用空格隔开,最后一个节点后没有空格。
示例1

输入

  1. 4
    1 2 3 4
    2
  2.  

输出

  1. 2 3
  2.  
  3. 完全二叉树如果不是最后一层则该层节点数目固定可以先打表,最后一层单独算即可
  1. #include<iostream>
  2. #include<cstdio>
  3. #include<cmath>
  4. #include<algorithm>
  5. #include<string.h>
  6. using namespace std;
  7. int main()
  8. {
  9. int num,exl[];exl[]=;
  10. for(int i=;i<=;i++)
  11. exl[i]=exl[i-]*;
  12. while(scanf("%d",&num)!=EOF)
  13. {
  14. int donser[],deep;
  15. for(int i=;i<=num;i++)
  16. scanf("%d",&donser[i]);
  17. scanf("%d",&deep);
  18. int temp=,sum=;
  19. while(temp!=deep)
  20. {
  21. num-=exl[temp];
  22. sum+=exl[temp];
  23. temp++;
  24. if(num<)
  25. {
  26. num=;
  27. break;
  28. }
  29. //cout<<"num:"<<num<<" sum:"<<sum<<" temp:"<<temp<<" exl:temp:"<<exl[temp]<<endl;
  30. }
  31. if(num==)
  32. {
  33. cout<<"EMPTY"<<endl;
  34. continue;
  35. }
  36. if(num>=exl[temp])
  37. {
  38. for(int i=sum+;i<=sum+exl[temp];i++)
  39. {
  40. cout<<donser[i];
  41. if(i!=sum+exl[temp])
  42. cout<<" ";
  43. }
  44.  
  45. }
  46. else
  47. {
  48. for(int i=sum+;i<=sum+num;i++)
  49. {
  50. cout<<donser[i];
  51. if(i!=sum+num)
  52. cout<<" ";
  53. }
  54. }
  55. cout<<endl;
  56. }
  57. return ;
  58. }

BUPT复试专题—树查找(2011)的更多相关文章

  1. BUPT复试专题—串查找(?)

    https://www.nowcoder.com/practice/a988eda518f242c29009f8620f654ede?tpId=67&tqId=29642&rp=0&a ...

  2. BUPT复试专题—查找(2011)

    https://www.nowcoder.com/practice/d93db01c2ee44e8a9237d63842aca8aa?tpId=67&tqId=29646&tPage= ...

  3. BUPT复试专题—打牌(2011)

    https://www.nowcoder.com/practice/82442ee76977479e8ab4b88dfadfca9f?tpId=67&tqId=29640&tPage= ...

  4. BUPT复试专题—找K小数(2011)

    https://www.nowcoder.com/practice/204dfa6fcbc8478f993d23f693189ffd?tpId=67&tqId=29637&rp=0&a ...

  5. BUPT复试专题—哈夫曼树(2010)

    https://www.nowcoder.com/practice/162753046d5f47c7aac01a5b2fcda155?tpId=67&tqId=29635&tPage= ...

  6. BUPT复试专题—排序(2009)

    题目描述 查找序列a 中小于 b 的第 i 个数的数的个数 输入 输入有多组,每组四行第一行:序列a个数N第二行:(序列a的)N个数,升序排列第三行:序列b个数M 第四行:(序列b的)M个数,升序排列 ...

  7. BUPT复试专题—统计节点个数(2013)

    题目描述 给出一棵有向树,一共有n个节点,如果一个节点的度(入度+出度)不小于它所有儿子以及它父亲的度(如果存在父亲或儿子),那么我们称这个节点为p节点,现在你的任务是统计p节点的个数. 如样例,第一 ...

  8. BUPT复试专题—解析表达式(2015)

    题目描述 输入一个字符串形式的表达式,该表达式中包括整数,四则运算符(+.-.*./),括号,三角函数(sin(x).cos(x).tan(x)),底数函数(lg(x).ln(x)),计算该表达式的值 ...

  9. BUPT复试专题—字符串转换(2013计院)

    题目描述 我们将仅由若干个同一小写字母构成的字符串称之为简单串,例如"aaaa"是一个简单串,而"abcd"则不是简单串.现在给你一个仅由小写字母组成的字符串, ...

随机推荐

  1. 使Linux支持exFAT和NTFS格式的磁盘

    Linux支持exFAT和NTFS Linux系统默认可以自动识别到fat32格式的盘,但fat32支持的文件不能大于4G,所以只能将移动硬盘和U盘格式化为NTFS和exFAT这两种格式的,对于U盘最 ...

  2. java代码生成二维码

    java代码生成二维码一般步骤 常用的是Google的Zxing来生成二维码,生成的一般步骤如下: 一.下载zxing-core的jar包: 二.需要创建一个MatrixToImageWriter类, ...

  3. Centos6.9 搭建rsync服务端与客户端 案例:全网备份项目

    rsync的企业工作场景说明 1)定时备份 1.1生产场景集群架构服务器备份方案项目 借助cron+rsync把所有客户服务器数据同步到备份服务器 2)实时复制 本地数据传输模式(local-only ...

  4. Linux菜鸟起飞之路【二】Linux基本常识

    一.Unix操作系统基本常识 1.什么是Unix? Unix是一个计算机操作系统,是一个用来协调.管理和控制计算机硬件与软件资源的控制程序. 2.Unix操作系统的特点? 多用户与多任务.多用户表示在 ...

  5. [转]Makefile中的wildcard/notdir/patsubst

    1.wildcard : 扩展通配符 2.notdir : 去除路径 3.patsubst :替换通配符 例子:建立一个测试目录,在测试目录下建立一个名为sub的子目录$ mkdir test$ cd ...

  6. 如何反馈问题issue?

    如何反馈问题issue? 01,请提交的时候换位思考一下:如果别人给你提交一个这样的 Issue,你能快速准确的理解吗?如果不能,烦请重新整理你的语言,按照要求的格式填写.专业一点,减少不必要的口舌浪 ...

  7. Web Best Practices

    Web Best Practices General Google WebFundamentals - Github JavaScript Style Guide - Github Google In ...

  8. c#笔记2018-12-26

    using System; /*C#学习笔记2018-12-26 * 1.@逐字字符串 * 2.数据类型转换 * 3.变量声明和占位符使用 * 4.接收用户输入值 * 5.const 关键字 * 6. ...

  9. 九度oj 题目1020:最小长方形

    题目描述:     给定一系列2维平面点的坐标(x, y),其中x和y均为整数,要求用一个最小的长方形框将所有点框在内.长方形框的边分别平行于x和y坐标轴,点落在边上也算是被框在内. 输入: 测试输入 ...

  10. FZU 2186 小明的迷宫 【压状dp】

    Problem Description 小明误入迷宫,塞翁失马焉知非福,原来在迷宫中还藏着一些财宝,小明想获得所有的财宝并离开迷宫.因为小明还是学生,还有家庭作业要做,所以他想尽快获得所有财宝并离开迷 ...