首页 > 其他分享 >Notebook

Notebook

时间:2022-10-19 22:15:20浏览次数:85  
标签:son int scanf li Notebook now op

传送门

trie 树裸题。但确实,若是用 set ,那么字符可以不限, 复杂度也只是带个 \(\log\)。

#include<bits/stdc++.h>
using namespace std;
#define N 500005
inline int read(){
	int x=0,f=1;char c=getchar();
	while(c<'0'||c>'9'){
		if(c=='-')f=-1;c=getchar();
	}
	while(c>='0'&&c<='9'){
		x=x*10+c-'0';c=getchar();
	}
	return x*f;
}

int tot,now,num[N],fa[N];
map<int, int> son[N];
map<int, int> li;
int cnt,to[N];
char op[7];
int main(){
	int Q;scanf("%d,",&Q);
	num[0]=-1;
	while(Q--){
		scanf("%s",op);
		int x,y,z;
		if(op[0]=='A'){
			scanf("%d",&x);
			if(son[now][x]==0){
				num[++tot]=x;son[now][x]=tot;fa[tot]=now;
				now=tot;
			}else{
				now=son[now][x];
			}
		}
		if(op[0]=='D'){
			if(now!=0)now=fa[now];
		}
		if(op[0]=='S'){
			scanf("%d",&y);
			if(li[y]==0)li[y]=++cnt;
			to[li[y]]=now;
		}
		if(op[0]=='L'){
			scanf("%d",&z);
			if(li[z]==0)li[z]=++cnt;
			now=to[li[z]];
		}
		printf("%d ",num[now]);
	}
	puts("");
	return 0;
}

标签:son,int,scanf,li,Notebook,now,op
From: https://www.cnblogs.com/Huster-ZHY/p/16808023.html

相关文章

  • CF1209F Koala and Notebook
    传送门思路一道妙妙题。我们考虑将一条边拆成若干个点连接的链,这条链上每条边的权值都是一位数。这样每个点一定是先尽量少经过边,这很bfs。对于转移,显然是选权值小......
  • Jupyter Notebook
    1、简介 JupyterNotebook(http://jupyter.org/)是一种Web应用,能让用户将说明文本、数学方程、代码和可视化内容全部组合到一个易于共享的文档中。简而言之,JupyterNote......
  • 在Jupyter Notebook 中输出 HTML
    在刚开始使用JupyterNotebook时,我总想使输出结果更使人满意,而不是只把结果打印出来。在我知道可以用HTML输出之前,我是这样输出一个表格的(数据来源:软科中国大学排名)。......
  • jupyter notebook导入conda环境
    创建conda环境condacreate--namefirstEnv激活环境并安装软件包condaactivatefirstEnvcondainstallscikit-learn安装和配置ipykernelcondainstall-cconda......
  • 太棒了,这才称得上 Jupyter Notebook 五大效率插件
    ​​JupyterNotebook​​​是一个很棒的教学、探索和编程环境,但其功能不足也是出了名的。幸好,有许多方法可以改进这个不错的工具,如​​JupyterNotebook​​扩展工具。......
  • Jupyter notebook 详细安装步骤
    前言:在安装​​Jupyter​​​notebook之前,确认您已安装python编译器(​​点击进入python官网​​)一、开始安装1、打开cmd命令窗口    在键盘上点击  win+r键,......
  • VScode中写Jupyter_Notebook
    在进行PIE-ENGINE编程的时候,之前总是使用cmd进行输入指令jupyternotebook打开,这其实有点繁琐,事实上,vscode里就已经内置了jupyter的插件,可以让你在vscode中写jupyter ......
  • Jupyter notebook导入Pycharm项目的.py文件里的模块及方法
    Jupyternotebook导入Pycharm项目种的.py文件里的模块及方法需要在Jupyternotebook里调用自己写的代码,过程如下。首先在Pycharm里写好一个文件,例如DCCACoef_Analysis.py......
  • Notebook交互式完成目标检测任务
    摘要:本文将介绍一种在Notebook中进行算法开发的新方式,新手也能够快速训练自己的模型。目标检测是计算机视觉中非常常用且基础的任务,但是由于目标检测任务的复杂性,往往令新......
  • Jupyter Notebook安装代码提示功能
    默认Jupyter Notebook没有安装代码提示功能,但是我们可以可通过如下命令安装和配置使得Jupyter Notebook具备代码提供功能。(确保Anaconda在环境变量里)1、电脑上搜索“Ana......