Uva11988

Posted zuiaimiusi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Uva11988相关的知识,希望对你有一定的参考价值。

Broken Keyboard (a.k.a. Beiju Text) UVA - 11988

 

用stl的链表做的,模拟链表的方法暂时没学会,先给自己挖个坑,以后来填。

 1 #include <cstdio>
 2 #include <iostream>
 3 #include <queue>
 4 #include <vector>
 5 #include<string.h>
 6 #include<map>
 7 #include<bits/stdc++.h>
 8 #define LL long long
 9 using namespace std;
10 #define maxn 100005
11 int last,cur,next[maxn];
12 char str[maxn],ch;
13 int main()
14 {
15    while(~scanf("%s",str))
16    {
17        list<char> s;
18        list<char>::iterator it;
19        it=s.begin();
20        int len=strlen(str);
21        for(int i=0;i<len;i++)
22        {
23            ch=str[i];
24            if(ch==[)
25             it=s.begin();
26            else if(ch==])
27             it=s.end();
28            else
29            {
30                it=s.insert(it,ch);
31                it++;
32            }
33        }
34        for(it=s.begin();it!=s.end();it++)
35            printf("%c",*it);
36        printf("\n");
37    }
38     return 0;
39 }

注意点:

1.一定要及时更新it的位置it=s.insert(it,ch);,如果写成s.insert(it,ch);,it的位置不明确会出错。insert(索引位置,插入对象)

 

以上是关于Uva11988的主要内容,如果未能解决你的问题,请参考以下文章

UVa 11988 破损的键盘(链表)

Uva 11988 Broken Keyboard STL+链表

Uva11988

UVA 11988 Broken Keyboard (a.k.a. Beiju Text) STL

UVA 11988 Broken Keyboard (a.k.a. Beiju Text)

UVA11988:悲剧文本(模拟链表)