UVA - 11988
来源:互联网 发布:创维酷开软件下载 编辑:程序博客网 时间:2024/05/01 02:54
//后向插入链表#include<iostream>#include<cstdio>#include<sstream>#include<cctype>#include<cstring>#include<cmath>#include<algorithm>#include<vector>#include<set>#include<map>#include<queue>#include<deque>#include<stack>using namespace std;const int maxn=1e5+5;//cur保存当前需要被插入的位置,last保存为最后一个字符的位置int cur,last;char p[maxn];int nxt[maxn];int main(){ string s; while(scanf("%s",p+1)!=EOF){ cur=last=0; nxt[0]=0;//表头位置为nxt[0] int len=strlen(p+1); for(int i=1;i<=len;i++){ if(p[i]=='[') cur=0;//如果为[改变链表头 else if(p[i]==']') cur=last;//如果为],从最后一个字符插入 else{ nxt[i]=nxt[cur]; nxt[cur]=i; if(cur==last)last=i;//last指向当前窗口的最后一个字符 cur=i;//cur指向当前需要被插入的位置 } } for(int i=nxt[0];i!=0;i=nxt[i]) printf("%c",p[i]); printf("\n"); } return 0;}
0 0
- UVA 11988
- UVA 11988
- uva 11988
- uva 11988
- UVa 11988
- uva 11988
- UVA - 11988
- UVA 11988
- [UVA]11988
- uva 11988
- Uva 11988 Broken Keyboard
- UVa 11988 ------ Broken Keyboard
- UVa-11988 悲剧文本
- UVA 11988 链表
- UVA 11988 链表
- uva 11988 Broken keyboard
- uva
- UVA
- mybatis重点概要
- 常用 Git 命令清单
- 拥有两年的经验的java工程师要具备的知识
- VS2010中编译openssl的步骤和使用设置
- 1001. A+B Format (20)
- UVA - 11988
- 视觉SLAM整理(1)
- 《C++ Primer 第五版》学习笔记-第四章-表达式
- 给现有MVC 项目添加 WebAPI
- Bit Manipulantion 技巧
- 机器学习&深度学习资料
- 网络工程师成长经验漫谈(下)
- 记switch的一个坑
- qml之FileDialog