UVA 11988 Broken Keyboard 链表
来源:互联网 发布:诺德软件 编辑:程序博客网 时间:2024/04/26 07:51
UVAOJ时不时掉链子
点击打开题目链接
用链表模拟一下就ok了
#include <cstdio>#include <list>#include <cstring>#include <string>#include <iostream>using namespace std;int main(){ list<char> srcList, ansList; list<char>::iterator listIt; string str; while (cin >> str) { srcList.clear(); ansList.clear(); for (int i = 0; i < str.length(); i++) //将输入的字符串添加到链表 srcList.push_back(str[i]); srcList.push_back(']'); //防止漏掉最后的字符串 char preChar = '['; //记录前一个按键 string curStr = ""; //记录按键后面的字符串 for (listIt = srcList.begin(); listIt != srcList.end(); listIt++) //遍历源字符串 { if (*listIt == '[' || *listIt == ']') //碰到按键 { if (preChar == '[') //Home键,插入到头部,注意插入顺序 { for (int i = curStr.length() - 1; i >=0 ; i--) ansList.push_front(curStr[i]); } else //End键 { for (int i = 0; i < curStr.length(); i++) ansList.push_back(curStr[i]); } preChar = *listIt; //更新上次的按键 curStr = ""; //清空字符串 } else { curStr += *listIt; //不是按键的话记录字符串 } } for (listIt = ansList.begin(); listIt != ansList.end(); listIt++) cout << *listIt; cout << endl; } return 0;}
0 0
- UVA 11988 Broken Keyboard 链表
- UVA 11988 Broken Keyboard 【链表】
- UVA 11988 Broken Keyboard (链表)
- Uva 11988 Broken Keyboard
- UVa 11988 ------ Broken Keyboard
- uva 11988 Broken keyboard
- UVA 11988(p143)----Broken Keyboard
- 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 (模拟)
- UVa 11988 Broken Keyboard(模拟链表)
- UVA 11988 Broken Keyboard (Beiju Text)
- Broken Keyboard 破损键盘 UVA 11988
- ACM篇:Uva 11988-- Broken Keyboard
- mysql中IN,OR,BETWEEN性能比较
- PAT-B 1015. 德才论
- Java 建造模式实例
- Android本地数据的存储和读取(文件格式)
- HDU-4612-Warm up(无向图缩点+直径)
- UVA 11988 Broken Keyboard 链表
- 查看Windows 10系统是否永久激活
- JAVA设计模式(04):创建型-建造模式(Builder)
- 【饥荒mod制作吧第五篇】MOD下载及安装
- Android利用tcpdump和wireshark抓取网络数据包
- Linux下python升级至2.7步骤
- LUA学习(五) 迭代器
- NSSet集合对象
- git的使用