HDU 5444 Elven Postman
来源:互联网 发布:大数据产业链包括哪些 编辑:程序博客网 时间:2024/05/22 17:04
2015长春Online:http://acm.hdu.edu.cn/showproblem.php?pid=5444
建一个二叉树,插入多个点,每次从根节点开始插入,如果当前节点为空则插入当前节点,否则如果小于当前节点的值,则插入右节点,否则插入左节点。
遍历的时候也如此,若找左儿子则输出W,找右儿子输出E,根节点输出空行。
#include <stdio.h>struct tree{tree *lchild;tree *rchild;int key;//tree(){}tree(int x){key = x;lchild = rchild = NULL;}};int q[1005];void build(tree *root, int key){if(root->key < key){if(root->lchild == NULL){root->lchild = new tree(key);return;}else build(root->lchild, key);}else {if(root->rchild == NULL){root->rchild = new tree(key);return;}else build(root->rchild, key);}}void getPath(tree *root, int target){if(root->key == target){puts("");return;} else if(root->key > target){printf("E");getPath(root->rchild, target);}else{printf("W");getPath(root->lchild, target);} }int main(){int t, n, i, x, k;scanf("%d", &t);while(t--){scanf("%d", &n);scanf("%d", &x);tree *root = new tree(x);for(i = 1;i < n;i++){scanf("%d", &x);build(root, x);}scanf("%d", &k);for(i = 0;i < k;i++) scanf("%d", &q[i]);for(i = 0;i < k;i++) getPath(root, q[i]);}}
0 0
- hdu 5444 Elven Postman
- hdu 5444 Elven Postman
- hdu 5444 Elven Postman
- hdu 5444 Elven Postman
- HDU 5444 Elven Postman
- HDU 5444 Elven Postman
- HDU-5444 Elven Postman
- HDU 5444 Elven Postman
- HDU 5444 Elven Postman
- HDU 5444 Elven Postman
- hdu 5444 Elven Postman
- hdu 5444 Elven Postman
- hdu 5444 Elven Postman(模拟)
- hdu 5444 Elven Postman (DFS)
- 网赛 HDU 5444 Elven Postman
- hdu 5444 Elven Postman 水题- -
- HDU 5444 Elven Postman 二叉排序树
- Hdu 5444 Elven Postman dfs
- 吃蛋糕 cate题解
- Java:Java 队列的遍历
- 多进程和多线程的优缺点
- 二叉树中节点删除
- 美团
- HDU 5444 Elven Postman
- Java - 异常处理
- MySQL问题,设置为不允许为空的字段却可以为空
- unity的forward rendering 中光源的使用和light的render mode
- jenkins系列教程
- 第一次开源项目贡献
- ul li高度在ie6、ie7、ie8、FF下兼容问题解决
- MySQL学习5_CentOS下Mysql数据库(不使用yum命令)的安装与配置
- TFS erasure code实现方案