萌新刚学OI,求助字符串
  • 板块学术版
  • 楼主xtracer
  • 当前回复3
  • 已保存回复3
  • 发布时间2021/3/4 19:42
  • 上次更新2023/11/5 02:28:17
查看原帖
萌新刚学OI,求助字符串
341049
xtracer楼主2021/3/4 19:42

RT,闲的,想写个字符串类,支持插入、删除、统计等功能,结果插入部分错了。求各位大佬们帮忙看看qaq

#include<iostream>
#include<string>
using namespace std;
typedef long long ll;
class mystr{
	public:
		string str;
		void revstr(){
    		ll l=0,r=str.length()-1;
			while(l<r){swap(str[l],str[r]);l+=1;r-=1;}
		}
		void getstr(bool space=false){
			if(space)getline(cin,str);
			else cin>>str;
		}
		string slicestr(ll l,ll r){
			return str.substr(l,r-l+1);
		}
		ll findpos(string targ,ll st=0){
    		ll res=str.find(targ,st);
    		return (res==string::npos?-1:res);
		}
		bool canfind(string targ,ll st=0){
    		return str.find(targ,st)!=string::npos;
		}
		ll count(string targ,ll st=0){
    		str=slicestr(st,str.length()-1);
    		ll pos=0;
    		ll ans=0;
    		ll res=0;
    		while(true){
        		res=findpos(targ,pos);
        		if(res==-1)break;
        		ans+=1;
        		pos=res+targ.length();
    		}
    		return ans;
		}
		void del(string targ){
			ll pos=findpos(targ);
			str.erase(str.begin()+pos);
		}
		void ins(string targ,ll pos){
			str.insert(str.begin()+pos,targ);
		}
		//--------------------------------------------
};
2021/3/4 19:42
加载中...