题解 | #树查找#

树查找

https://www.nowcoder.com/practice/9a10d5e7d99c45e2a462644d46c428e4

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
#define len 10000
#define maxint 1<<31-1

int tree[len];
void tree_initial(){
    for(int i = 0;i<len;i++){
        tree[i] = maxint;
    }
}

int main(){
    int n;
    while(scanf("%d",&n)!=EOF){
        for(int i = 1;i<=n;i++){
            scanf("%d",&tree[i]);
        }
        int h;
        scanf("%d",&h);
        int flag = 0;
        for(int i = pow(2,h-1);i<=pow(2,h)-1&&i<=n;i++){
            if(flag){
                printf(" ");
            }
            flag = 1;
            printf("%d",tree[i]);
        }
        if(flag==0){
            printf("EMPTY\n");
        }
        printf("\n");
    }
}

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务