UVA11988破损的键盘
Posted yjkhhh
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了UVA11988破损的键盘相关的知识,希望对你有一定的参考价值。
维护一个链表,以及当前位置、head、tail的指针,模拟就行了
#include<iostream>
#include<cstring>
#include<cstdio>
using namespace std;
char s[100010];
int cnt,head,tail,pos;
struct Data
char c;
int nxt;
a[100010];
int main()
while(scanf("%s",s)!=EOF)
memset(a,0,sizeof(a));
cnt=0;
head=tail=pos=0;
int n=strlen(s);
for(int i=0;i<n;++i)
if(s[i]=='[')
pos=head;
else if(s[i]==']')
pos=tail;
else
a[++cnt].nxt=a[pos].nxt;
a[pos].nxt=cnt;
a[cnt].c=s[i];
if(pos==tail) tail=cnt;
pos=cnt;
head=a[head].nxt;
while(head) putchar(a[head].c),head=a[head].nxt;
puts("");
return 0;
以上是关于UVA11988破损的键盘的主要内容,如果未能解决你的问题,请参考以下文章