HNU 12834 Thread Tree

递归输出就行了

#include<bits/stdc++.h>
using namespace std;
struct tree{
    int dot;
    string s;
}t[1020];
vector<int>v[1020];
void print(int x)
{
    for(int i=0;i<v[x].size();i++)
    {
        for(int j=1;j<=t[v[x][i]].dot;j++)
            printf(".");
        cout<<t[v[x][i]].s<<endl;
        print(v[x][i]);
    }
}
int main()
{
    int n,x;
    scanf("%d",&n);
    t[0].dot=-1;
    for(int i=1;i<=n;i++)
    {
        scanf("%d",&x);
        cin>>t[i].s;
        v[x].push_back(i);
        t[i].dot=t[x].dot+1;
    }
    print(0);
    return 0;
}
时间: 2024-10-14 19:29:12

HNU 12834 Thread Tree的相关文章

(原)数据结构——线索二叉树

原文地址:http://www.cnblogs.com/Security-Darren/p/4716082.html 转载务必注明出处! 线索二叉树的思想来源于二叉树的存储结构中,存在一些空的指针域,因此是否能够将这些空间利用起来,存储一些关于节点间先后顺序的信息,由此产生了线索二叉树.线索二叉树中,线索反映前驱.后继的关系,而指针则体现左右子树. 以二叉链表为例,线索二叉树存储结构上的特点是添加标识符,表明左右指针域究竟存的是指向前驱和后继的线索,还是指向左右子树的指针: 线索二叉树的优势是一

Exception in thread &quot;main&quot; org.hibernate.hql.ast.QuerySyntaxException: User is not mapped [from User

Exception in thread "main" org.hibernate.hql.ast.QuerySyntaxException: User is not mapped [from User user where user.name=?0 and user.pass=?1] at org.hibernate.hql.ast.util.SessionFactoryHelper.requireClassPersister(SessionFactoryHelper.java:180

Exception in thread &quot;main&quot; java.lang.NoClassDefFoundError: org/jaxen/NamespaceContext

使用dom4j的xpath查询节点,报如下错误: Exception in thread "main" java.lang.NoClassDefFoundError: org/jaxen/NamespaceContext at org.dom4j.DocumentFactory.createXPath(DocumentFactory.java:230) at org.dom4j.tree.AbstractNode.createXPath(AbstractNode.java:207) a

Chromium网页Graphics Layer Tree创建过程分析

在前面一文中,我们分析了网页Render Layer Tree的创建过程.在创建Render Layer的同时,WebKit还会为其创建Graphics Layer.这些Graphics Layer形成一个Graphics Layer Tree.Graphics Layer可看作是一个图形缓冲区,被若干Render Layer共用.本文接下来就分析Graphics Layer Tree的创建过程. 老罗的新浪微博:http://weibo.com/shengyangluo,欢迎关注! 网页的Re

构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(38)-Easyui-accordion+tree漂亮的菜单导航

本节主要知识点是easyui 的手风琴加树结构做菜单导航 有园友抱怨原来菜单非常难看,但是基于原有树形无限级别的设计,没有办法只能已树形展示 先来看原来的效果 改变后的效果,当然我已经做好了,最后只放出代码供大家参考,其实网上也有这方面的资料,但是不是很好用,我还是自己写了 改变后的效果 手风琴一直都是比较漂亮和受欢迎的,但是基于树多级别来说,做起来就比较麻烦,所以我这里也用了手风琴加树的模式来做 注:上面的图标都是乱添加的,并不代表意思 进入正文: 首先必须下载一些图标.可以自行百度网页小图标

Chromium网页Layer Tree创建过程分析

在Chromium中,WebKit会创建一个Graphics Layer Tree描述网页.Graphics Layer Tree是和网页渲染相关的一个Tree.网页渲染最终由Chromium的CC模块完成,因此CC模块又会根据Graphics Layer Tree创建一个Layer Tree,以后就会根据这个Layer Tree对网页进行渲染.本文接下来就分析网页Layer Tree的创建过程. 老罗的新浪微博:http://weibo.com/shengyangluo,欢迎关注! 从前面Ch

Chromium网页Pending Layer Tree激活为Active Layer Tree的过程分析

网页分块的光栅化操作完成后,CC Pending Layer Tree就会激活为CC Active Layer Tree.CC Active Layer Tree代表用户当前在屏幕上看到的网页内容,它可以快速响应用户输入,例如滚动和缩放.本文接下来就分析CC Pending Layer Tree激活为CC Active Layer Tree,以及CC Active Layer Tree的渲染过程. 老罗的新浪微博:http://weibo.com/shengyangluo,欢迎关注! CC Pe

Chromium网页Layer Tree绘制过程分析

网页绘图表面创建完成之后,调度器就会请求绘制CC Layer Tree,这样网页在加载完成之后就能快速显示出来.通过CC Layer Tree可以依次找到Graphics Layer Tree.Render Layer Tree和Render Object Tree.有了Render Object Tree之后,就可以执行具体的绘制工作了.接下来我们就分析网页CC Layer Tree的绘制过程. 老罗的新浪微博:http://weibo.com/shengyangluo,欢迎关注! CC La

Concurrent.Thread.js

(function(){ if ( !this.Data || (typeof this.Data != 'object' && typeof this.Data != 'function') ) this.Data = new Object(); if ( this.Data.Stack === undefined ) this.Data.Stack = undefined; with ( function(){ with ( Data ) { return function () {