题目

https://oj.xjtuicpc.com/problem/1323

思路

题目说明有点绕。

然后我们仔细观察一下,这个东西很显然是一个天然的树形结构。

我们可以把一个空间(或者一个数)当成结点,门当成边,然后这个问题就是在树上边上上下下,支持随时加点删点和输出子结点。

然后一个大模拟就过了。

插入和删除很讨厌,可以直接用vector省得手写。

大水题一道,然而赛时降智打击加上前面的题一直pending心态爆炸,没调出来。

每次打比赛都状态奇差,属实丢人,感觉还是得多打多练。。。

代码

点击查看代码
#include<cstdio>
#include<cstdlib>
#include<vector>
#define maxn 100010
using namespace std;
int fa[maxn],idx=1,val[maxn];
vector<int> son[maxn];
int main(){
int i,j,q,p,v,op;
int pos=1;
scanf("%d",&q);
for(i=1;i<=q;++i){
scanf("%d",&op);
if(op==1){
scanf("%d%d",&p,&v);
son[pos].insert(son[pos].begin()+p,++idx);
fa[idx]=pos;
val[idx]=v;
}
if(op==2){
scanf("%d",&p);
son[pos].erase(son[pos].begin()+p-1);
}
if(op==3){
scanf("%d",&p);
if(!p){
if(fa[pos]) pos=fa[pos];
}
else{
if(!val[son[pos][p-1]]) pos=son[pos][p-1];
}
}
if(op==4){
int k=son[pos].size();
printf("{");
for(j=0;j<k;++j){
if(val[son[pos][j]]) printf("%d",val[son[pos][j]]);
else printf("[]");
if(j<k-1) printf(" ");
}
printf("}\n");
}
}
// system("pause");
return 0;
}

XJTUOJ #1323. [L2-2]三倍满世界的更多相关文章

  1. CHAPTER 19 Ordering the World 第19章 分类世界

    CHAPTER 19 Ordering the World 第19章 分类世界 Our planet is home to a bewildering variety of plants and an ...

  2. 【scratch3.0教程】1.1 走进编程世界

    第一章 认识Scratch 第1课   走进编程世界 大家认识下图中的人物吗? 史蒂夫·乔布斯             比尔·盖茨 ●Elon Musk,特斯拉.Space X火箭公司创始人,9岁学习 ...

  3. Sublime Text 3 全程详细图文原创教程(持续更新中。。。)

    一. 前言 使用Sublime Text 也有几个年头了,版本也从2升级到3了,但犹如寒天饮冰水,冷暖尽自知.最初也是不知道从何下手,满世界地查找资料,但能查阅到的资料,苦于它们的零碎.片面,不够系统 ...

  4. .NET面试题系列[12] - C# 3.0 LINQ的准备工作

    "为了使LINQ能够正常工作,代码必须简化到它要求的程度." - Jon Skeet 为了提高园子中诸位兄弟的英语水平,我将重要的术语后面配备了对应的英文. .NET面试题系列目录 ...

  5. 《3D Math Primer for Graphics and Game Development》读书笔记1

    <3D Math Primer for Graphics and Game Development>读书笔记1 本文是<3D Math Primer for Graphics and ...

  6. 微信为什么发布 Mac 版?

    因为 Mac 就是好啊就是好啊,就是好…… 打完收工,谢谢,鼓掌 piapiapia……晚安! 这么写在京城行走会不会挨板砖呢?头像已经印到书上满世界的发出去了,虽然考虑到行走江湖求一个稳字,我还特意 ...

  7. [Erlang 0105] Erlang Resources 小站 2013年1月~6月资讯合集

    很多事情要做,一件一件来; Erlang Resources 小站 2013年1月~6月资讯合集,方便检索.      小站地址: http://site.douban.com/204209/     ...

  8. Kafka 分布式环境搭建

    这篇文章将介绍如何搭建kafka环境,我们会从单机版开始,然后逐渐往分布式扩展.单机版的搭建官网上就有,比较容易实现,这里我就简单介绍下即可,而分布式的搭建官网却没有描述,我们最终的目的还是用分布式来 ...

  9. Dynamics AX 2012 R2 业务系列-销售业务流程

    在博文Dynamics AX R2 业务系列中,Reinhard对这个系列做了一个规划,下面我们就按照规划开始说业务吧. 1.销售的主要职责 其实这里说的职责主要是针对销售文员,并非整天外面满世界跑业 ...

  10. 总结四条对学习Linux系统有帮助的方法

    网络是一个很神奇的东西,现代人的生活离不开网络,网络已深入人们的工作,生活,娱乐等方方面面.网络之所以无处不在,是因为它提供了诸多的网络服务,所以网络服务是网络的灵魂. 互联网上的各种网络服务是架构在 ...

随机推荐

  1. 使用PHP自带的过滤验证函数:Filter

    在PHP开发中,大家经常会对提交的表单数据做合法性验证,比如验证Email/IP/URL,大家首先想到的应该是使用正则验证.其实在PHP中已经内置了一个过滤验证函数Filter,大家可以参考一下. P ...

  2. maven项目pom.xml报未找到指定路径文件

    解决方法: 错误环境:Tomcat7 + Eclipse + Maven + Spring + SpringMvc + Mybatis 错误描述: 错误解决步骤: 1.找到eclipse的projec ...

  3. C++中map用法详解(转)

    Map是c++的一个标准容器,她提供了很好一对一的关系,在一些程序中建立一个map可以起到事半功倍的效果,总结了一些map基本简单实用的操作!1. map最基本的构造函数:   map<stri ...

  4. Laravel ORM 常用方法

    1. 数据查询 ->find($id);  //需要一个主键$id并返回一个模型对象.若不存在则返回null ->findOrFail($id);  //需要一个主键$id并返回一个模型对 ...

  5. 【解决】Mac无法通过smb连接到windows的共享文件夹

    通过Mac访问windows的共享文件夹也有很多博文都写了,这里不再提. 先按照网上教程,在Windows下允许远程,然后设置文件夹共享出来,再在Mac上通过smb登录,输入用户名和密码窗口总是抖动, ...

  6. kafka配置内外网同时访问

    #内网监听名称,这个在配置文件中没有需要添加 inter.broker.listener.name=INTERNAL #内网监听规则,第一个是内网,第二个是外网,注意端口不一样,端口可以自己定义 li ...

  7. k8s中pv和pvc

    转载: https://blog.csdn.net/echizao1839/article/details/125766826

  8. 视频直播源码,js实现节流和防抖

    视频直播源码,js实现节流和防抖 防抖: 就是指连续触发事件但是在设定的一段时间内中只执行最后后一次,例如:设定1000毫秒执行,当你触发事件了,他会1000毫秒后执行,但是在还剩500毫秒的时候你又 ...

  9. stl算法汇总

  10. Vue3学习笔记(1)

    安装 //使用yarn构建 //安装yarn 需要管理员权限 sudo npm i yarn -g yarn create vite cd .. yarn yarn dev 目录结构 见名知义 四种语 ...