L1-059 敲笨钟

阿西...只是想用一下stringstream,结果发现坑了。
我发现clear()和str("")单用都会出问题,只有这俩结合才有用。
还有C++字符串处理这块真的太坑了。
https://www.cnblogs.com/smile-programmer/p/17322945.html

#include <bits/stdc++.h>
using namespace std;
string s1="qiao ben zhong.";
int main(){
	int n;
	cin>>n;
	getchar();
	string str;
	vector<string> vec;
	stringstream s;
	for(int i=0;i<n;i++){
		vec.clear();
		s.clear();
		s.str("");
		getline(cin,str);
		s<<str;
		if(str.find("ong,")!=string::npos && str.find("ong.")!=string::npos){
			//cout<<str<<endl;
			string t;
			while(getline(s,t,' ')){
				vec.push_back(t);
			}
			vec.pop_back();
			vec.pop_back();
			vec.pop_back();
			vec.push_back(s1);
            for(int i=0;i<vec.size();i++){
            	cout<<vec[i];
            	if(i<vec.size()-1) cout<<" ";
			}
			cout<<'\n';
		}else{
			cout<<"Skipped"<<'\n';
			continue;
		}
	} 
	return 0;
}
posted @ 2024-03-13 17:22  YuKiCheng  阅读(22)  评论(0)    收藏  举报