Luogu P1305 新二叉树

P1305 新二叉树

题目描述

输入一串二叉树,用遍历前序打出。

输入输出格式

输入格式:

第一行为二叉树的节点数n。

后面n行,每一个字母为节点,后两个字母分别为其左右儿子。

空节点用*表示

输出格式:

前序排列的二叉树

输入输出样例

输入样例#1:

6
abc
bdi
cj*
d**
i**
j**

输出样例#1:

abdicj

  

  这道题其实很简单,在这里写下就是要让大家看一个简单的方法。(感谢javalyc童鞋)

 1 #include <cstdio>
 2
 3 char a[100][3];
 4 int n;
 5
 6 void fff(char c)
 7 {
 8     if(c == ‘*‘)
 9         return;
10     printf("%c", c);
11     for(int i=1; i<=n; i++)
12         if(a[i][0] == c)
13         {
14             fff(a[i][1]);
15             fff(a[i][2]);
16         }
17 }
18
19 int main()
20 {
21     scanf("%d", &n);
22     getchar();
23     for(int i = 1; i<=n; i++)
24         scanf("%s", a[i]);
25     fff(a[1][0]);
26     return 0;
27 }
时间: 2024-10-11 23:17:00

Luogu P1305 新二叉树的相关文章

P1305 新二叉树

题目描述 输入一串完全二叉树,用遍历前序打出. 输入输出格式 输入格式: 第一行为二叉树的节点数n. 后面n行,每一个字母为节点,后两个字母分别为其左右儿子. 空节点用*表示 输出格式: 前序排列的完全二叉树 输入输出样例 输入样例#1: 6 abc bdi cj* d** i** j** 输出样例#1: abdicj 桶... 1 #include<iostream> 2 #include<cstdio> 3 #include<cstring> 4 #include&

洛谷 P1305 新二叉树 Label:字符串的输出总是有惊喜

题目描述 输入一串完全二叉树,用遍历前序打出. 输入输出格式 输入格式: 第一行为二叉树的节点数n. 后面n行,每一个字母为节点,后两个字母分别为其左右儿子. 空节点用*表示 输出格式: 前序排列的完全二叉树 输入输出样例 输入样例#1: 6 abc bdi cj* d** i** j** 输出样例#1: abdicj 代码 1 #include<iostream> 2 #include<cstring> 3 #include<algorithm> 4 #include

1305 新二叉树

难度:普及- 题目类型:树形结构 提交次数:1 涉及知识:二叉树 题目描述 输入一串完全二叉树,用遍历前序打出. 输入输出格式 输入格式: 第一行为二叉树的节点数n. 后面n行,每一个字母为节点,后两个字母分别为其左右儿子. 空节点用*表示 输出格式: 前序排列的完全二叉树 代码: 1 #include<iostream> 2 using namespace std; 3 char a[100010][3]; 4 int n; 5 void build(char x){ 6 if(x=='*'

[Luogu P5018] 对称二叉树

原题链接qwq \(Structure\) 本题作为 \(PJ\ T4\) 其实还是历届以来较简单的 题目相信大家已经读过了,就是让我们找出一棵二叉树中具有最多结点的对称子树. 但肯定会有很多人审题不清楚而导致没有弄清对称子树的概念(可能是时间也不够扒) 下面就来给大家讲(胡)解(扯)一下 在上图中,我们可以看出,子树既可以是根节点和叶节点组成,也可以是一个节点, 如图中绿色笔圈出的就是一棵树.在比赛中,有很多选手将对称子树理解成:一棵树 中的一部分为对称(如图中蓝色笔和粉色笔圈出的).但实际上

[luogu U8984][新创无际夏日公开赛] 冰精冻西瓜 [树状数组]

题目背景 盛夏,冰之妖精琪露诺发现了一大片西瓜地,终于可以吃到美味的冻西瓜啦. 题目描述 琪露诺是拥有操纵冷气程度的能力的妖精,一天她发现了一片西瓜地.这里有n个西瓜,由n-1条西瓜蔓连接,形成一个有根树,琪露诺想要把它们冷冻起来慢慢吃. 这些西瓜蔓具有神奇的性质,可以将经过它的冷气的寒冷程度放大或缩小,每条西瓜蔓放大/缩小冷气寒冷程度的能力值为Wi,表示冷气经过它后,寒冷程度值x会变为x*wi.每个西瓜也有一个寒冷程度值,炎热的夏日,所有西瓜的寒冷程度值初始都为0. 琪露诺会做出两种动作: ①

luogu_1305 新二叉树

#include<bits/stdc++.h> using namespace std; struct node{char pa,data,lc,rc;}a[10001]; int vis[201],root=-1; int (xianxuint i){ printf("%c",i); if(a[i].lc!='*')xianxu(a[i].lc); if(a[i].rc!='*')xianxu(a[i].rc); } int main(){ int n; scanf(&q

树和二叉树

以下的内容做为学习笔记,复制别人的,感觉总结的比较好: 第5章 树和二叉树 本章中主要介绍下列内容:  1.树的定义和存储结构  2.二叉树的定义.性质.存储结构  3.二叉树的遍历.线索算法  4.树和二叉树的转换  5.哈夫曼树及其应用课时分配:     1.2两个学时,3四个学时,4两个学时, 5两个学时,上机两个学时重点.难点:     二叉树的遍历.线索算法.哈夫曼树及其应用 第一节 树 1.树的定义和基本运算1.1 定义    树是一种常用的非线性结构.我们可以这样定义:树是n(n≥

数据结构(三):非线性逻辑结构-特殊的二叉树结构:堆、哈夫曼树、二叉搜索树、平衡二叉搜索树、红黑树、线索二叉树

在上一篇数据结构的博文<数据结构(三):非线性逻辑结构-二叉树>中已经对二叉树的概念.遍历等基本的概念和操作进行了介绍.本篇博文主要介绍几个特殊的二叉树,堆.哈夫曼树.二叉搜索树.平衡二叉搜索树.红黑树.线索二叉树,它们在解决实际问题中有着非常重要的应用.本文主要从概念和一些基本操作上进行分类和总结. 一.概念总揽 (1) 堆 堆(heap order)是一种特殊的表,如果将它看做是一颗完全二叉树的层次序列,那么它具有如下的性质:每个节点的值都不大于其孩子的值,或每个节点的值都不小于其孩子的值

(转)数据结构:树、二叉树、最优二叉树

来源:http://www.cnblogs.com/coder2012/archive/2013/06/05/3102868.html 树 树形结构是一类非常重要的非线性结构,它可以很好地描述客观世界中广泛存在的具有分支关系或层次特性的对象,因此在计算机领域里有着广泛应用,如操作系统中的文件管理.编译程序中的语法结构和数据库系统信息组织形式等. 树的相关定义 节点的度:一个节点含有的子树的个数称为该节点的度: 树的度:一棵树中,最大的节点的度称为树的度: 叶节点或终端节点:度为零的节点: 非终端