BZOJ1209【rope】
来源:互联网 发布:张召忠 知乎 编辑:程序博客网 时间:2024/06/05 21:56
/* I will wait for you*/#include <cstdio>#include <cstdlib>#include <cstring>#include <cmath>#include <ctime>#include <algorithm>#include <iostream>#include <fstream>#include <vector>#include <queue>#include <deque>#include <map>#include <set>#include <string>#include <ext/rope>#define make make_pair#define fi first#define se secondusing namespace std;typedef long long ll;typedef unsigned long long ull;typedef pair<int,int> pii;const int maxn = 2000000;const int maxm = 1010;const int maxs = 26;const int inf = 0x3f3f3f3f;const int P = 1000000007;const double error = 1e-9;inline int read(){int x = 0, f = 1;char ch = getchar();while (ch <= 47 || ch >= 58)f = (ch == 45 ? -1 : 1), ch = getchar();while (ch >= 48 && ch <= 57)x = x * 10 + ch - 48, ch = getchar();return x * f;}__gnu_cxx :: rope<char> str;char s[200], t[maxn];int main(){int n = read(), len, now = 0;while (n--) {scanf("%s", s);if (s[0] == 'M')now = read();if (s[0] == 'P')now--;if (s[0] == 'N')now++;if (s[0] == 'I') {len = read();for (int i = 0; i < len; i++)t[i] = getchar(), i -= (t[i] == 10);t[len] = 0, str.insert(now, t);}if (s[0] == 'D')len = read(), str.erase(now, len);if (s[0] == 'G')printf("%c\n", str[now]);if (s[0] == 'R') {len = read(), str.copy(now, len, t);t[len] = 0, reverse(t, t + len);str.erase(now, len), str.insert(now, t);}}return 0;}
0 0
- BZOJ1209【rope】
- rope poj
- Verlet rope
- POJ2365 Rope
- BZOJ1507【rope】
- 2365 Rope
- rope总结
- 1020. Rope
- Rope:理论与实践
- Rope Crisis in Ropeland
- ural 1020. Rope
- cocos2d cut the rope
- ural 1020 Rope
- [timus] 1020. Rope
- hdu_4476_Cut the rope
- POJ 2365 Rope
- hust 1626 Cutting rope
- [BZOJ1507][NOI2003][Rope]Editor
- VB.net 类、对象、字段、属性、方法、构造函数
- [AS3]播放器判断视频状态(侦听视频流的开始和结束)
- test
- linux dmesg命令参数及用法详解(linux显示开机信息命令)
- VC++中字符串编码的转换
- BZOJ1209【rope】
- dd
- HDOJ 畅通工程 1863(并查集+prim)
- Android点滴---TextView,RadioButton 设置 HTML文本,加载网络图片
- ecshop增加积分记录的相关代码
- IIS 配置PHP 运行环境
- 10个针对企业的免费大数据分析工具
- BZOJ3687【bitset】
- 浩易南:我是怎么赚钱的?