求助!!测试点2和3 都WA了!!!
查看原帖
求助!!测试点2和3 都WA了!!!
342874
刘奶奶喝水呢楼主2021/2/17 17:52
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<stdio.h>
#include <string>
#include <sstream>
using namespace std;

//c==2时 手动拼接为啥就不对呢
//待我去讨论区问一问

int main() {
	int q;
	cin >> q;
	string str,strz="";
	cin >> str;
	string s[105];
	int sum = 0;
	for (int i = 1; i <= q; i++) {
		int c;
		cin >> c;
		string str1;
		int a, b;
		if (c == 1) {
			cin >> str1;
			strz = str + str1;
			str = strz;
			s[sum++] = str;
			continue;
		}
		if (c == 2) {
			cin >> a >> b;
			strz = str.substr(a, b);           //题解中的
			//for (int i = a; i < (a+b,str.length()); i++) {     //为什么不写min() 省略了????
			//	strz += str[i];
			//}
			str = strz;
			s[sum++] = str;
			continue;
		}
		if (c == 3) {
			cin >> a >> str1;
			str.insert(3, str1);        //查了百度
			s[sum++] = str;
			continue;
		}
		if (c == 4) {             //查了百度
			cin >> str1;
			int index = str.find(str1,0);
			if (index < str.length()) {
				string res;
				stringstream ss;
				ss << index;
				ss >> res;
				s[sum++] = res;
			}
			else {
				s[sum++] = "-1";
			}
			continue;
		}
	}
	for (int i = 0; i < q; i++) {
		cout << s[i] << endl;
	}

	return 0;
}
2021/2/17 17:52
加载中...