⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 1981.cpp

📁 杭电 acm部分代码 有兴趣的可以下载 谢谢
💻 CPP
字号:
#include <iostream>
using namespace std;
int n, c, times;
struct pp
{
	char cmd;
	int start;
	int end;
}me[3010];
char sn[80010];
void change(int k)
{
	int i, t;
	char letter;
	t = 0;
	for(i = times - 1; i >= 0; i--)
	{
		if(me[i].cmd == 'R')
		{
			if(k >= me[i].start && k <= me[i].end)
			{
				k = me[i].start + me[i].end - k;
			}
		}			
		else 
		{
			if(k >= me[i].start && k <= me[i].end)
				t++;
		}
	}
	letter = sn[k];
	while(t--)
	{
		letter++;
		if(letter > 'z')
			letter = 'a';
	}
	printf("%c\n", letter);
}
int main()
{
	int test, a, b;
	char cc;
	scanf("%d", &test);
	while (test--)
	{
		times = 0;
		scanf("%d %d", &n, &c);
		scanf("%s", sn);
		while(c--)
		{
			scanf("\n%c", &cc);
			if(cc == 'Q')
			{
				scanf("%d", &a);
				change(a - 1);	
			}
			else
			{
				scanf("%d %d", &a, &b);
				me[times].cmd = cc;
				me[times].start = a - 1;
				me[times].end = b - 1;
				times++;
			}
		}
	}
	return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -