UVa-11988 Broken Keyboard (a.k.a. Beiju Text)
来源:互联网 发布:淘宝自动下架 编辑:程序博客网 时间:2024/06/06 00:44
#include <iostream>#include <cstdio>#include <cstring>using namespace std;const int maxn =1e5 + 5;int last, cur, Next[maxn];char s[maxn];int main(){ while(~scanf("%s", s + 1)) { int n = strlen(s + 1); last = cur = 0; Next[0] = 0; for(int i = 1; i <= n; i ++) { char ch = s[i]; if(ch =='[') cur = 0; else if(ch ==']') cur = last; else { Next[i] = Next[cur]; Next[cur] = i; if(cur == last) last = i; cur = i; }// printf("i = %d (s[%d] = %c): \n", i, i, s[i]);// printf("cur = %d , last = %d\n", cur, last);// for(int i = 0; i <= n; i ++)// printf("Next[%d] = %d\n", i, Next[i]);// cout << endl; } for(int i = Next[0]; i != 0; i = Next[i]) printf("%c", s[i]); printf("\n"); } return 0;}
题意:
就是一个破损的键盘敲着敲着会不定时地自动按End(光标移至末尾)或者Home(光标移至开头)。输出最后的文本。[表示Home键。]表示End键。
题解:
还是没有弄明白如何用数组来弄链表,不过还是有点收获吧。注释的东西可以反映整个Next的变化过程,从中体会下。
0 0
- Uva-11988-Broken Keyboard (a.k.a. Beiju Text)
- UVA 11988 Broken Keyboard (a.k.a. Beiju Text)
- uva 11988 Broken Keyboard (a.k.a. Beiju Text)
- UVA 11988 - Broken Keyboard (a.k.a. Beiju Text)
- UVA 11988 Broken Keyboard (a.k.a. Beiju Text)
- UVa:11988 Broken Keyboard (a.k.a. Beiju Text)
- UVA - 11988 Broken Keyboard (a.k.a. Beiju Text)
- UVA 11988 Broken Keyboard (a.k.a. Beiju Text)
- UVa 11988 - Broken Keyboard (a.k.a. Beiju Text) 题解
- UVA 11988 - Broken Keyboard (a.k.a. Beiju Text)
- Broken Keyboard (a.k.a. Beiju Text) UVA, 11988(链表)
- UVa 11988 - Broken Keyboard (a.k.a. Beiju Text)
- UVA - 11988 Broken Keyboard (a.k.a. Beiju Text)
- UVa 11988 - Broken Keyboard (a.k.a. Beiju Text)
- UVA - 11988 Broken Keyboard (a.k.a. Beiju Text)链表
- UVA - 11988 Broken Keyboard (a.k.a. Beiju Text) 链表
- UVA - 11988 Broken Keyboard (a.k.a. Beiju Text)
- uva 11988 Broken Keyboard (a.k.a. Beiju Text) 链表
- HDU3118Arbiter (二分图的本质(好题)+二进制枚举)
- Android的NDK开发(1)————Android JNI简介与调用流程
- hibernate关联关系注解配置
- ExtJs博客前奏
- Word 中数字和回车等符合的替换
- UVa-11988 Broken Keyboard (a.k.a. Beiju Text)
- 设计模式——单例模式
- Echarts-java使用
- java线程研究---(6)暂停Thread:join
- POJ2418----Hardwood Species
- Qt中如何利用QPushButton来实现一个弹出菜单
- Android的NDK开发(2)————利用Android NDK编写一个简单的HelloWorld
- js汉字转拼音的方法
- js日期格式化