文章

59

粉丝

0

获赞

338

访问

11.3k

头像
查找 - 北邮 题解:string+reverse+substr
P1387 北京邮电大学
发布于2026年3月10日 15:52
阅读数 154

#include <bits/stdc++.h>
using namespace std;

int main()
{
	int n;
	string s;
	while (cin >> s)
	{
		cin >> n;
		for (int i = 0; i < n; i++)
		{
			string t;
			cin >> t;
			if (t[0] == '0')
			{
				int a1 = t[1] - '0', a2 = t[2] - '0';
				reverse(s.begin() + a1, s.begin() + a1+a2 );
				cout << s << endl;
			}
			else
			{
				int pointer = 3;//point modify words in direction
				int a1 = t[1] - '0', a2 = t[2] - '0';
				for (int i = 0; i <a2; i++)
				{
					s[i+a1] = t[pointer++];
				}
				if (t[pointer] != '\0')
				{
					s = s.substr(0, a1 + a2) + t.substr(pointer) + s.substr(a1 + a2);
				}
				cout << s << endl;
			}
		}
	}
	return 0;
}
	

 

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发