您现在的位置是:主页 > news > 怎么往网站里做游戏/石家庄百度关键词搜索

怎么往网站里做游戏/石家庄百度关键词搜索

admin2025/5/17 9:20:45news

简介怎么往网站里做游戏,石家庄百度关键词搜索,自己怎么做搬家网站,优秀企业门户网站http://poj.org/problem?id1572 看了网上那么多行的C代码的做法我也是被吓到了,其实用C的string类函数很简单啊 关键是替换的字符串不能回头,不然有些测试数据,一个循环过后,你又回头重新再新串中去查,很可能就无…

怎么往网站里做游戏,石家庄百度关键词搜索,自己怎么做搬家网站,优秀企业门户网站http://poj.org/problem?id1572 看了网上那么多行的C代码的做法我也是被吓到了,其实用C的string类函数很简单啊 关键是替换的字符串不能回头,不然有些测试数据,一个循环过后,你又回头重新再新串中去查,很可能就无…

http://poj.org/problem?id=1572     

看了网上那么多行的C++代码的做法我也是被吓到了,其实用C++的string类函数很简单啊

关键是替换的字符串不能回头,不然有些测试数据,一个循环过后,你又回头重新再新串中去查,很可能就无限循环了。

1.假如定义一个string s[1],则定义了一个字符串数组:

string s[2];
s[1]="01234 5678";

cout<<s[1].length()<<" "<<s[0].length()<<endl;

输出0 10

如果用getline(cin,string*),则会读取整个一行作为一个字符串存储在string*中,包括空格。

2.             str3.erase(index,str1[i].length());//删除index的位置
                str3.insert(index,str2[i]);//插入到index位置


              比如str=abana str1=ban,str2=ny,则index返回1,从2开始删除,删除到str1的长度。

             之后str=ana,insert把str2插入下标1的位置,插入长度为str2的长度。


#include <iostream>
#include <cstdio>
#include <string>
using namespace std;int main()
{//freopen("in.txt","r",stdin);while(1){int n;scanf("%d",&n);if(n==0)break;string str1[12];string str2[12];getchar();for(int i=0; i<n; i++){getline(cin,str1[i]);getline(cin,str2[i]);}string str3;getline(cin,str3);for(int i=0; i<n; i++)while(1){int index=str3.find(str1[i]); //查找要替换的字符串位置,没有返回string::npos,返回到查找到的串的第一个字符的下标if(index==string::npos)break;str3=str3.replace(index,str1[i].length(),str2[i]); //replace函数直接替换,或者用erase和insert也行//str3.erase(index,str1[i].length());//删除index的位置//str3.insert(index,str2[i]);//插入到index位置}cout<<str3<<endl;}return 0;
}



转载于:https://www.cnblogs.com/zhangmingzhao/p/7256415.html