Undraw the Trees

这题没啥说的,利用DFS进行先序遍历即可,注意 node 可以不是字母,然后 puts() 默认换行的,太久没用都忘了。。

#include<bits/stdc++.h>
using namespace std;
const int maxn = 200 + 5;
int T;
char G[maxn][maxn];
bool isnode(char c){if(c && c != '-' && c != '|' && c != ' ' && c != '#') return true;return false;
}
void DFS(int x,int y){printf("%c(",G[x][y]);if(G[x+1][y] != '|'){ putchar(')'); return; }x += 2;while(G[x][y] == '-' && y) y--;if(G[x][y] != '-') y++;for(;G[x][y] && G[x][y] == '-';y++){if(isnode(G[x+1][y])) DFS(x+1,y);}putchar(')');
}
int main(){// freopen("data.in","r",stdin);// freopen("data.out","w",stdout);scanf("%d",&T); getchar();while(T--){int i = 0;memset(G,0,sizeof(G));while(fgets(G[i],maxn,stdin) && G[i][0] != '#'){ G[i][strlen(G[i])-1] = 0; i++; }G[i][strlen(G[i])-1] = 0;putchar('(');for(int j = 0;G[0][j];j++){if(isnode(G[0][j])){ DFS(0,j); break; }}puts(")");}return 0;
}

转载于:https://www.cnblogs.com/JingwangLi/p/10202706.html

10562:Undraw the Trees相关推荐

  1. UVa 10562 Undraw the Trees 看图写树

    转载请注明: 仰望高端玩家的小清新 http://www.cnblogs.com/luruiyuan/ 题目大意: 题目传送门:UVa 10562  Undraw the Trees 给定字符拼成的树 ...

  2. uva 10562 - Undraw the Trees

    2019独角兽企业重金招聘Python工程师标准>>> 有点dfs的感觉,树是连通的,可以从根节点一直追踪到叶子.有些比如空树的特殊情况要小心. #include<stdio. ...

  3. uva 10562 Undraw the Trees

    题意:给出一棵树,让你用另一种方法表达出来 解题思路:深搜思路(注意为空的情况)---这道题对它的所有情况还是没有考虑好! 解题代码: // File Name: uva10562.c // Auth ...

  4. POJ 2229 Sumsets(递推,找规律)

    构造,递推,因为划分是合并的逆过程,考虑怎么合并. 先把N展开成全部为N个1 然后合并,因为和顺序无关,所以只和出现次数有关 情况有点多并且为了避免重复,分类,C[i]表示序列中最大的数为2^i时的方 ...

  5. 紫书《算法竞赛入门经典》

    紫书<算法竞赛入门经典>题目一览 第3章 数组和字符串(例题) UVA 272 TEX Quotes UVA 10082 WERTYU UVA 401 Palindromes UVA 34 ...

  6. 提取了下刘汝佳推荐的题号...

    今天闲来没事上uva oj提取了下刘汝佳推荐的acm题号,原始数据如下: Volume 0. Getting Started    10055 - Hashmat the Brave Warrior ...

  7. 算法竞赛入门竞赛 入门经典 第六章 个人记录

    UVa 210 并行程序模拟(放弃 || 待补) 没看懂题意,但是有百度了一下duque 算是对duque有了一个大致的认识和了解 当然也有尝试. 本来想着去hdu找一些duque的题 结果 好像可以 ...

  8. Competitive Programming专题题解(1)

    Competitive Programming题解 AOAPC I: Beginning Algorithm Contests 题解 CP2-1.1.1 Easy(Ad Hoc Problems) P ...

  9. AOAPC I: Beginning Algorithm Contests 题解

    AOAPC I: Beginning Algorithm Contests 题解 AOAPC I: Beginning Algorithm Contests (Rujia Liu) - Virtual ...

  10. 《算法竞赛入门经典(第2版)》——学习记录

    前言:   这里主要记录本人在学习紫书过程中充分理解过的题目的AC代码,便于以后回顾时查找代码和思路,毕竟看别人的真的有点难懂.此外,本书甚至是本书之外的相关知识学习也可能在此留下记录.   作为一只 ...

最新文章

  1. RESTful视图之Request 与 Response
  2. 错误: 找不到android.support.v7.app.AppCompatActivity的类文件
  3. linux高级运维要会的,linux高级运维必会命令
  4. Object 标签遮挡 Div 显示
  5. 怎么复制远程服务器上的文件夹,Linux系统复制文件/文件夹到远程服务器
  6. java序列化_技术干货 | JAVA反序列化漏洞
  7. c++语言中如果调用函数时,需要改变实参或者返回多个值,应该采取,2013年计算机二级C++模拟试题十一及答案...
  8. Python的GUI框架PySide
  9. Android之drawlayout使用和总结
  10. lisp修改界址线属性_地籍与房产测量 A卷答案
  11. 全新的PDO数据库操作类(仅适用Mysql)
  12. Xshel和Xftp免费版
  13. Excel导入SQL(VB.NET版)
  14. JavaScript基础
  15. linux台式机双屏幕怎么连接,台式机Linux/Unix多系统安装详细教程
  16. Naive UI的初体验
  17. 图的常见衡量指标及算法调研
  18. (转)春节抢票难,github标星1.5万的2款开源项目你一定没试过
  19. CG标准函数库——数学函数(GPU编程与CG语言之阳春白雪下里巴人)
  20. 几种OSM数据下载方式的详细介绍

热门文章

  1. eclipse sdk 无法更新
  2. Delphi循环语句 -For
  3. 基于百度通用翻译API的一个翻译小工具
  4. Linx下静默方式安装weblogic
  5. 如何使用shell收集linux系统状态,并把结果发给远端服务器
  6. asp.net Json序列化
  7. mybatis insert 如何返回主键
  8. 中文的习题解答中国人看懂, 英文的习题解答外国人能看懂
  9. C# Invoke 使用 异步委托
  10. SetStretchBltMode() 防止图片失真