借用大牛的一张图片:模拟

 #include<cstdio>
#include<cmath>
#include<cstring>
#include<algorithm>
#include<iostream>
#include<memory.h>
#include<cstdlib>
#include<vector>
using namespace std;
const int MAXN=;
const double eps=1e-;
const int inf=0x3f3f3f3f; string s,ss,cs;
vector<int>pos;
int mode;
int now,m;
void L()
{
if(now>)
now--;
} void R()
{
if(now<ss.length())
now++;
} void S()
{
mode=!mode;
pos.clear();
}
void C()
{
pos.push_back(now);
if(pos.size()==)
{
sort(pos.begin(),pos.end());
cs=ss.substr(pos[],pos[]-pos[]);
pos.clear();
}
}
void D()
{
if(pos.size())
{
pos.push_back(now);
sort(pos.begin(),pos.end());
ss.erase(ss.begin()+pos[],ss.begin()+pos[]);
now=pos[];
pos.clear();
}
else if(now<ss.length())
{
ss.erase(ss.begin()+now,ss.begin()+now+);
}
} void B()
{
if(now>)
{
ss.erase(ss.begin()+now-,ss.begin()+now);
now--;
}
pos.clear();
} void V()
{
if(cs.length())
{
if(!mode)
{
if(ss.length()+cs.length()<=m)
{
int len=cs.length();
for(int i=; i<len; i++,now++)
{
ss.insert(ss.begin()+now,cs[i]);
}
}
}
else
{
if(now+cs.length()+<=m)
{
int len1=cs.length();
int len2=ss.length();
for(int i=; i<len1; i++,now++)
{
if(now>=len2)
ss.insert(ss.begin()+now,cs[i]);
else
ss[now]=cs[i];
}
}
}
}
pos.clear();
} int main()
{
int T;
scanf("%d",&T);
while(T--)
{
cin>>m>>s;
int len=s.length();
mode=;
now=;
ss.clear();
cs.clear();
pos.clear();
for(int i=; i<len&&m; i++)
{
if(s[i]=='L')
L();
else if(s[i]=='R')
R();
else if(s[i]=='C')
C();
else if(s[i]=='V')
V();
else if(s[i]=='D')
D();
else if(s[i]=='B')
B();
else if(s[i]=='S')
S();
else
{
if(mode&&now<ss.length())
{
ss[now++]=s[i];
}
else if(ss.length()<m)
{
ss.insert(ss.begin()+now,s[i]);
now++;
}
pos.clear();
}
}
if(ss.size())
{
cout<<ss<<endl;
}
else
cout<<"NOTHING"<<endl;
}
return ;
}

2015北京网络赛B题 Mission Impossible 6的更多相关文章

  1. 2015北京网络赛 G题 Boxes bfs

    Boxes Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://hihocoder.com/contest/acmicpc2015beijingonl ...

  2. 2015北京网络赛 H题 Fractal 找规律

    Fractal Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://hihocoder.com/contest/acmicpc2015beijingo ...

  3. hihocoder 1236(2015北京网络赛 J题) 分块bitset乱搞题

    题目大意: 每个人有五门课成绩,初始给定一部分学生的成绩,然后每次询问给出一个学生的成绩,希望知道在给定的一堆学生的成绩比这个学生每门都低或者相等的人数 因为强行要求在线查询,所以题目要求,每次当前给 ...

  4. 2015北京网络赛A题The Cats' Feeding Spots

    题意:给你一百个点,找个以这些点为中心的最小的圆,使得这个圆恰好包含了n个点,而且这个圆的边界上并没有点 解题思路:暴力枚举每个点,求出每个点到其他点的距离,取第n大的点,判断一下. #include ...

  5. 2015北京网络赛 A题 The Cats' Feeding Spots 暴力

    The Cats' Feeding Spots Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://hihocoder.com/contest/acm ...

  6. 2015北京网络赛 Couple Trees 倍增算法

    2015北京网络赛 Couple Trees 题意:两棵树,求不同树上两个节点的最近公共祖先 思路:比赛时看过的队伍不是很多,没有仔细想.今天补题才发现有个 倍增算法,自己竟然不知道.  解法来自 q ...

  7. 2015北京网络赛 D-The Celebration of Rabbits 动归+FWT

    2015北京网络赛 D-The Celebration of Rabbits 题意: 给定四个正整数n, m, L, R (1≤n,m,L,R≤1000). 设a为一个长度为2n+1的序列. 设f(x ...

  8. 2015北京网络赛 J Scores bitset+分块

    2015北京网络赛 J Scores 题意:50000组5维数据,50000个询问,问有多少组每一维都不大于询问的数据 思路:赛时没有思路,后来看解题报告也因为智商太低看了半天看不懂.bitset之前 ...

  9. ACM-ICPC 2018北京网络赛-A题 Saving Tang Monk II-优先队列

    做法:优先队列模板题,按步数从小到大为优先级,PASS掉曾经以相同氧气瓶走过的地方就好了 题目1 : Saving Tang Monk II 时间限制:1000ms 单点时限:1000ms 内存限制: ...

随机推荐

  1. 全面学习cookies

    来自<javascript高级程序设计 第三版:作者Nicholas C. Zakas>的学习笔记(五) 本来想自己总结的,但是某文总结太好了(http://www.cnblogs.com ...

  2. PAT-乙级-1009. 说反话 (20)

    1009. 说反话 (20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 给定一句英语,要求你编写程序,将句中 ...

  3. Socat

    http://www.oschina.net/p/socat/ tcpick https://sourceforge.net/projects/tcpick/

  4. win8.1下使用vmware workstation 来编译ffmpeg

    先吐槽下,T440预装的win8.1 采用 UEFI+GPT分区导致 无法使用传统的EasyBCD来达到win+ubuntu双系统效果, 尝试了2天全部失败,等以后有时间了 买块U盘再干掉win8 现 ...

  5. iOS开发UI篇—程序启动原理和UIApplication1

    iOS开发UI篇—程序启动原理和UIApplication   一.UIApplication 1.简单介绍 (1)UIApplication对象是应用程序的象征,一个UIApplication对象就 ...

  6. 让JAVA代码跑得更快

    本文简单介绍一下在写代码过程中用到的一些让JAVA代码更高效的技巧. 1.   将一些系统资源放在池中(如数据库连接, 线程等) 在standalone的应用中, 数据库连接池可以使用一些开源的连接池 ...

  7. strcpy函数的C/C++实现

    2013-07-05 14:07:49 本函数给出了几种strcpy与strncpy的实现,有ugly implementation,也有good implementation.并参考标准库中的imp ...

  8. [转] Android自动测试之monkeyrunner工具(二)

    monkeyrunner工具  前言: 最近开始研究Android自动化测试方法,对其中的一些工具.方法和框架做了一些简单的整理,其中包括android测试框架.CTS.Monkey.Monkeyru ...

  9. 大四实习准备2_java异常处理_android控件练习

    2015-4-24 Java 异常处理 可以有多个catch;ArrayIndexOutOfBoundsException类是Exception类的子类RuntimeException类的一个间接子类 ...

  10. bzoj4511: [Usaco2016 Jan]Subsequences Summing to Sevens

    前缀和. 设f[i]为前缀和%7=i的第一个点.那么答案就是max(i-f[s[i]%7])了. #include<cstdio> #include<algorithm> #i ...